[Mlir-commits] [clang] [llvm] [mlir] [openmp] [OpenMP][offload] Cross-team reductions with variable number of teams (PR #195102)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Thu Apr 30 08:47:02 PDT 2026


github-actions[bot] wrote:

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

* 173478 tests passed
* 3282 tests skipped
* 4 tests failed

## Failed Tests
(click on a test name to see its output)

### Clang
<details>
<summary>Clang.OpenMP/nvptx_lambda_capturing.cpp</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 5
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang -cc1 -internal-isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23/include -nostdsysteminc -fopenmp -x c++ -std=c++11 -triple powerpc64le-unknown-unknown -fopenmp-targets=nvptx64-nvidia-cuda -emit-llvm /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp -o - | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --allow-unused-prefixes /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp --check-prefix=CHECK1
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang -cc1 -internal-isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23/include -nostdsysteminc -fopenmp -x c++ -std=c++11 -triple powerpc64le-unknown-unknown -fopenmp-targets=nvptx64-nvidia-cuda -emit-llvm /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp -o -
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --allow-unused-prefixes /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp --check-prefix=CHECK1
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp:200:17: error: CHECK1-NEXT: expected string not found in input
# | // CHECK1-NEXT: store i32 4, ptr [[TMP69]], align 4
# |                 ^
# | <stdin>:198:97: note: scanning from here
# |  %69 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                 ^
# | <stdin>:198:97: note: with "TMP69" equal to "%69"
# |  %69 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                 ^
# | <stdin>:199:2: note: possible intended match here
# |  store i32 5, ptr %69, align 4
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp:451:73: error: undefined variable: GLOB1
# | // CHECK1-NEXT: call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @[[GLOB1]], i32 6, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l43.omp_outlined, ptr [[TMP0]], ptr [[TMP5]], ptr [[TMP6]], ptr [[TMP7]], ptr [[TMP3]], ptr [[TMP8]])
# |                                                                         ^
# | <stdin>:490:61: note: with "TMP0" equal to "%0"
# |  %8 = load ptr, ptr %tmp2, align 8, !nonnull !12, !align !14
# |                                                             ^
# | <stdin>:490:61: note: with "TMP5" equal to "%5"
# |  %8 = load ptr, ptr %tmp2, align 8, !nonnull !12, !align !14
# |                                                             ^
# | <stdin>:490:61: note: with "TMP6" equal to "%6"
# |  %8 = load ptr, ptr %tmp2, align 8, !nonnull !12, !align !14
# |                                                             ^
# | <stdin>:490:61: note: with "TMP7" equal to "%7"
# |  %8 = load ptr, ptr %tmp2, align 8, !nonnull !12, !align !14
# |                                                             ^
# | <stdin>:490:61: note: with "TMP3" equal to "%3"
# |  %8 = load ptr, ptr %tmp2, align 8, !nonnull !12, !align !14
# |                                                             ^
# | <stdin>:490:61: note: with "TMP8" equal to "%8"
# |  %8 = load ptr, ptr %tmp2, align 8, !nonnull !12, !align !14
# |                                                             ^
# | <stdin>:491:2: note: possible intended match here
# |  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @1, i32 6, ptr @__omp_offloading_db_c7a71_main_l43.omp_outlined, ptr %0, ptr %5, ptr %6, ptr %7, ptr %3, ptr %8)
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp:566:17: error: CHECK1-NEXT: expected string not found in input
# | // CHECK1-NEXT: store i32 4, ptr [[TMP19]], align 4
# |                 ^
# | <stdin>:608:97: note: scanning from here
# |  %19 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                 ^
# | <stdin>:608:97: note: with "TMP19" equal to "%19"
# |  %19 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                 ^
# | <stdin>:611:2: note: possible intended match here
# |  store i32 4, ptr %20, align 4
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp:720:73: error: undefined variable: GLOB1
# | // CHECK1-NEXT: call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @[[GLOB1]], i32 2, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__ZN1S3fooEv_l29.omp_outlined, ptr [[TMP0]], ptr [[TMP2]])
# |                                                                         ^
# | <stdin>:766:60: note: with "TMP0" equal to "%0"
# |  %2 = load ptr, ptr %tmp, align 8, !nonnull !12, !align !14
# |                                                            ^
# | <stdin>:766:60: note: with "TMP2" equal to "%2"
# |  %2 = load ptr, ptr %tmp, align 8, !nonnull !12, !align !14
# |                                                            ^
# | <stdin>:767:2: note: possible intended match here
# |  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @1, i32 2, ptr @__omp_offloading_db_c7a71__ZN1S3fooEv_l29.omp_outlined, ptr %0, ptr %2)
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp:785:17: error: CHECK1-NEXT: expected string not found in input
# | // CHECK1-NEXT: store i32 4, ptr [[TMP15]], align 4
# |                 ^
# | <stdin>:831:97: note: scanning from here
# |  %15 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                 ^
# | <stdin>:831:97: note: with "TMP15" equal to "%15"
# |  %15 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                 ^
# | <stdin>:832:2: note: possible intended match here
# |  store i32 5, ptr %15, align 4
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp:831:73: error: undefined variable: GLOB1
# | // CHECK1-NEXT: call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @[[GLOB1]], i32 1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z3fooIZN1S3fooEvEUlvE_EiRKT__l18.omp_outlined, ptr [[TMP1]])
# |                                                                         ^
# | <stdin>:879:60: note: with "TMP1" equal to "%1"
# |  %1 = load ptr, ptr %tmp, align 8, !nonnull !12, !align !14
# |                                                            ^
# | <stdin>:880:2: note: possible intended match here
# |  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @1, i32 1, ptr @__omp_offloading_db_c7a71__Z3fooIZN1S3fooEvEUlvE_EiRKT__l18.omp_outlined, ptr %1)
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/nvptx_lambda_capturing.cpp
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |           193:  store ptr null, ptr %65, align 8 
# |           194:  %66 = getelementptr inbounds [12 x ptr], ptr %.offload_mappers, i64 0, i64 11 
# |           195:  store ptr null, ptr %66, align 8 
# |           196:  %67 = getelementptr inbounds [12 x ptr], ptr %.offload_baseptrs, i32 0, i32 0 
# |           197:  %68 = getelementptr inbounds [12 x ptr], ptr %.offload_ptrs, i32 0, i32 0 
# |           198:  %69 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0 
# | next:200'0                                                                                                     X error: no match found
# | next:200'1                                                                                                       with "TMP69" equal to "%69"
# |           199:  store i32 5, ptr %69, align 4 
# | next:200'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:200'2      ?                              possible intended match
# |           200:  %70 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 1 
# | next:200'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           201:  store i32 12, ptr %70, align 4 
# | next:200'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           202:  %71 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 2 
# | next:200'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           203:  store ptr %67, ptr %71, align 8 
# | next:200'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           204:  %72 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 3 
# | next:200'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           485:  store ptr %2, ptr %tmp1, align 8 
# |           486:  store ptr %4, ptr %tmp2, align 8 
# |           487:  %5 = load ptr, ptr %tmp, align 8, !nonnull !12, !align !13 
# |           488:  %6 = load ptr, ptr %tmp1, align 8, !nonnull !12, !align !13 
# |           489:  %7 = load ptr, ptr %d.addr, align 8 
# |           490:  %8 = load ptr, ptr %tmp2, align 8, !nonnull !12, !align !14 
# | next:451'0                                                                 X error: match failed for invalid pattern
# | next:451'1                                                                   undefined variable: GLOB1
# | next:451'2                                                                   with "TMP0" equal to "%0"
# | next:451'3                                                                   with "TMP5" equal to "%5"
# | next:451'4                                                                   with "TMP6" equal to "%6"
# | next:451'5                                                                   with "TMP7" equal to "%7"
# | next:451'6                                                                   with "TMP3" equal to "%3"
# | next:451'7                                                                   with "TMP8" equal to "%8"
# |           491:  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @1, i32 6, ptr @__omp_offloading_db_c7a71_main_l43.omp_outlined, ptr %0, ptr %5, ptr %6, ptr %7, ptr %3, ptr %8) 
# | next:451'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:451'8      ?                                                                                                                                                                      possible intended match
# |           492:  ret void 
# | next:451'0     ~~~~~~~~~~
# |           493: } 
# | next:451'0     ~~
# |           494:  
# | next:451'0     ~
# |           495: ; Function Attrs: noinline norecurse nounwind optnone 
# | next:451'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           496: define internal void @__omp_offloading_db_c7a71_main_l43.omp_outlined(ptr noalias noundef %.global_tid., ptr noalias noundef %.bound_tid., ptr noundef nonnull align 4 dereferenceable(4) %argc, ptr noundef nonnull align 4 dereferenceable(4) %b, ptr noundef nonnull align 4 dereferenceable(4) %c, ptr noundef %d, ptr noundef nonnull align 4 dereferenceable(4) %a, ptr noundef nonnull align 8 dereferenceable(40) %L) #1 { 
# | next:451'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           603:  store ptr null, ptr %15, align 8 
# |           604:  %16 = getelementptr inbounds [4 x ptr], ptr %.offload_mappers, i64 0, i64 3 
# |           605:  store ptr null, ptr %16, align 8 
# |           606:  %17 = getelementptr inbounds [4 x ptr], ptr %.offload_baseptrs, i32 0, i32 0 
# |           607:  %18 = getelementptr inbounds [4 x ptr], ptr %.offload_ptrs, i32 0, i32 0 
# |           608:  %19 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0 
# | next:566'0                                                                                                     X error: no match found
# | next:566'1                                                                                                       with "TMP19" equal to "%19"
# |           609:  store i32 5, ptr %19, align 4 
# | next:566'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           610:  %20 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 1 
# | next:566'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           611:  store i32 4, ptr %20, align 4 
# | next:566'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:566'2      ?                              possible intended match
# |           612:  %21 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 2 
# | next:566'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           613:  store ptr %17, ptr %21, align 8 
# | next:566'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           614:  %22 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 3 
# | next:566'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           615:  store ptr %18, ptr %22, align 8 
# | next:566'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           616:  %23 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 4 
# | next:566'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           761:  store ptr %L, ptr %L.addr, align 8 
# |           762:  store ptr %dyn_ptr, ptr %dyn_ptr.addr, align 8 
# |           763:  %0 = load ptr, ptr %this.addr, align 8 
# |           764:  %1 = load ptr, ptr %L.addr, align 8, !nonnull !12, !align !14 
# |           765:  store ptr %1, ptr %tmp, align 8 
# |           766:  %2 = load ptr, ptr %tmp, align 8, !nonnull !12, !align !14 
# | next:720'0                                                                X error: match failed for invalid pattern
# | next:720'1                                                                  undefined variable: GLOB1
# | next:720'2                                                                  with "TMP0" equal to "%0"
# | next:720'3                                                                  with "TMP2" equal to "%2"
# |           767:  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @1, i32 2, ptr @__omp_offloading_db_c7a71__ZN1S3fooEv_l29.omp_outlined, ptr %0, ptr %2) 
# | next:720'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:720'4      ?                                                                                                                                             possible intended match
# |           768:  ret void 
# | next:720'0     ~~~~~~~~~~
# |           769: } 
# | next:720'0     ~~
# |           770:  
# | next:720'0     ~
# |           771: ; Function Attrs: noinline norecurse nounwind optnone 
# | next:720'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           772: define internal void @__omp_offloading_db_c7a71__ZN1S3fooEv_l29.omp_outlined(ptr noalias noundef %.global_tid., ptr noalias noundef %.bound_tid., ptr noundef %this, ptr noundef nonnull align 8 dereferenceable(8) %L) #1 { 
# | next:720'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           826:  store ptr null, ptr %11, align 8 
# |           827:  %12 = getelementptr inbounds [3 x ptr], ptr %.offload_mappers, i64 0, i64 2 
# |           828:  store ptr null, ptr %12, align 8 
# |           829:  %13 = getelementptr inbounds [3 x ptr], ptr %.offload_baseptrs, i32 0, i32 0 
# |           830:  %14 = getelementptr inbounds [3 x ptr], ptr %.offload_ptrs, i32 0, i32 0 
# |           831:  %15 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0 
# | next:785'0                                                                                                     X error: no match found
# | next:785'1                                                                                                       with "TMP15" equal to "%15"
# |           832:  store i32 5, ptr %15, align 4 
# | next:785'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:785'2      ?                              possible intended match
# |           833:  %16 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 1 
# | next:785'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           834:  store i32 3, ptr %16, align 4 
# | next:785'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           835:  %17 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 2 
# | next:785'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           836:  store ptr %13, ptr %17, align 8 
# | next:785'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           837:  %18 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 3 
# | next:785'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           874:  %tmp = alloca ptr, align 8 
# |           875:  store ptr %t, ptr %t.addr, align 8 
# |           876:  store ptr %dyn_ptr, ptr %dyn_ptr.addr, align 8 
# |           877:  %0 = load ptr, ptr %t.addr, align 8, !nonnull !12, !align !14 
# |           878:  store ptr %0, ptr %tmp, align 8 
# |           879:  %1 = load ptr, ptr %tmp, align 8, !nonnull !12, !align !14 
# | next:831'0                                                                X error: match failed for invalid pattern
# | next:831'1                                                                  undefined variable: GLOB1
# | next:831'2                                                                  with "TMP1" equal to "%1"
# |           880:  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @1, i32 1, ptr @__omp_offloading_db_c7a71__Z3fooIZN1S3fooEvEUlvE_EiRKT__l18.omp_outlined, ptr %1) 
# | next:831'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:831'3      ?                                                                                                                                                       possible intended match
# |           881:  ret void 
# | next:831'0     ~~~~~~~~~~
# |           882: } 
# | next:831'0     ~~
# |           883:  
# | next:831'0     ~
# |           884: ; Function Attrs: noinline norecurse nounwind optnone 
# | next:831'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           885: define internal void @__omp_offloading_db_c7a71__Z3fooIZN1S3fooEvEUlvE_EiRKT__l18.omp_outlined(ptr noalias noundef %.global_tid., ptr noalias noundef %.bound_tid., ptr noundef nonnull align 8 dereferenceable(8) %t) #1 { 
# | next:831'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>Clang.OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang -cc1 -internal-isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23/include -nostdsysteminc -verify -fopenmp -fopenmp-version=50 -fopenmp-targets=powerpc64le-ibm-linux-gnu -x c++ -triple powerpc64le-ibm-linux-gnu -emit-llvm /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp -o - | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --allow-unused-prefixes /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp --check-prefix=CHECK1
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang -cc1 -internal-isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23/include -nostdsysteminc -verify -fopenmp -fopenmp-version=50 -fopenmp-targets=powerpc64le-ibm-linux-gnu -x c++ -triple powerpc64le-ibm-linux-gnu -emit-llvm /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp -o -
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --allow-unused-prefixes /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp --check-prefix=CHECK1
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp:41:17: error: CHECK1-NEXT: expected string not found in input
# | // CHECK1-NEXT: store i32 4, ptr [[TMP5]], align 4
# |                 ^
# | <stdin>:36:96: note: scanning from here
# |  %5 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                ^
# | <stdin>:36:96: note: with "TMP5" equal to "%5"
# |  %5 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                ^
# | <stdin>:37:2: note: possible intended match here
# |  store i32 5, ptr %5, align 4
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp:81:74: error: undefined variable: GLOB3
# | // CHECK1-NEXT: call void (ptr, i32, ptr, ...) @__kmpc_fork_teams(ptr @[[GLOB3]], i32 0, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z9gtid_testv_l16.omp_outlined)
# |                                                                          ^
# | <stdin>:79:2: note: possible intended match here
# |  call void (ptr, i32, ptr, ...) @__kmpc_fork_teams(ptr @3, i32 0, ptr @__omp_offloading_db_c7d33__Z9gtid_testv_l16.omp_outlined)
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp:130:73: error: undefined variable: GLOB3
# | // CHECK1-NEXT: call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @[[GLOB3]], i32 2, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z9gtid_testv_l16.omp_outlined.omp_outlined, i64 [[TMP8]], i64 [[TMP10]])
# |                                                                         ^
# | <stdin>:132:26: note: with "TMP8" equal to "%8"
# |  %10 = zext i32 %9 to i64
# |                          ^
# | <stdin>:132:26: note: with "TMP10" equal to "%10"
# |  %10 = zext i32 %9 to i64
# |                          ^
# | <stdin>:133:2: note: possible intended match here
# |  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @3, i32 2, ptr @__omp_offloading_db_c7d33__Z9gtid_testv_l16.omp_outlined.omp_outlined, i64 %8, i64 %10)
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            31:  store ptr null, ptr %1, align 8 
# |            32:  %2 = getelementptr inbounds [1 x ptr], ptr %.offload_mappers, i64 0, i64 0 
# |            33:  store ptr null, ptr %2, align 8 
# |            34:  %3 = getelementptr inbounds [1 x ptr], ptr %.offload_baseptrs, i32 0, i32 0 
# |            35:  %4 = getelementptr inbounds [1 x ptr], ptr %.offload_ptrs, i32 0, i32 0 
# |            36:  %5 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0 
# | next:41'0                                                                                                     X error: no match found
# | next:41'1                                                                                                       with "TMP5" equal to "%5"
# |            37:  store i32 5, ptr %5, align 4 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:41'2       ?                             possible intended match
# |            38:  %6 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 1 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            39:  store i32 1, ptr %6, align 4 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            40:  %7 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 2 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            41:  store ptr %3, ptr %7, align 8 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            42:  %8 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 3 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |            73:  
# | next:41'0      ~
# |            74: ; Function Attrs: noinline norecurse nounwind optnone 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            75: define internal void @__omp_offloading_db_c7d33__Z9gtid_testv_l16(ptr noalias noundef %dyn_ptr) #1 { 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            76: entry: 
# |            77:  %dyn_ptr.addr = alloca ptr, align 8 
# |            78:  store ptr %dyn_ptr, ptr %dyn_ptr.addr, align 8 
# | next:81'0                                                     X error: match failed for invalid pattern
# | next:81'1                                                       undefined variable: GLOB3
# |            79:  call void (ptr, i32, ptr, ...) @__kmpc_fork_teams(ptr @3, i32 0, ptr @__omp_offloading_db_c7d33__Z9gtid_testv_l16.omp_outlined) 
# | next:81'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:81'2       ?                                                                                                                                possible intended match
# |            80:  ret void 
# | next:81'0      ~~~~~~~~~~
# |            81: } 
# | next:81'0      ~~
# |            82:  
# | next:81'0      ~
# |            83: ; Function Attrs: noinline norecurse nounwind optnone 
# | next:81'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            84: define internal void @__omp_offloading_db_c7d33__Z9gtid_testv_l16.omp_outlined(ptr noalias noundef %.global_tid., ptr noalias noundef %.bound_tid.) #1 { 
# | next:81'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           127:  
# |           128: omp.inner.for.body: ; preds = %omp.inner.for.cond 
# |           129:  %7 = load i32, ptr %.omp.comb.lb, align 4 
# |           130:  %8 = zext i32 %7 to i64 
# |           131:  %9 = load i32, ptr %.omp.comb.ub, align 4 
# |           132:  %10 = zext i32 %9 to i64 
# | next:130'0                              X error: match failed for invalid pattern
# | next:130'1                                undefined variable: GLOB3
# | next:130'2                                with "TMP8" equal to "%8"
# | next:130'3                                with "TMP10" equal to "%10"
# |           133:  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @3, i32 2, ptr @__omp_offloading_db_c7d33__Z9gtid_testv_l16.omp_outlined.omp_outlined, i64 %8, i64 %10) 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:130'4      ?                                                                                                                                                             possible intended match
# |           134:  br label %omp.inner.for.inc 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           135:  
# | next:130'0     ~
# |           136: omp.inner.for.inc: ; preds = %omp.inner.for.body 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           137:  %11 = load i32, ptr %.omp.iv, align 4 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           138:  %12 = load i32, ptr %.omp.stride, align 4 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>Clang.OpenMP/target_teams_generic_loop_order_codegen.cpp</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang -cc1 -internal-isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23/include -nostdsysteminc -verify -fopenmp -fopenmp-version=50 -fopenmp-targets=powerpc64le-ibm-linux-gnu -x c++ -triple powerpc64le-ibm-linux-gnu -emit-llvm /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp -o - | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --allow-unused-prefixes /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp --check-prefix=CHECK1
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang -cc1 -internal-isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23/include -nostdsysteminc -verify -fopenmp -fopenmp-version=50 -fopenmp-targets=powerpc64le-ibm-linux-gnu -x c++ -triple powerpc64le-ibm-linux-gnu -emit-llvm /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp -o -
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --allow-unused-prefixes /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp --check-prefix=CHECK1
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp:41:17: error: CHECK1-NEXT: expected string not found in input
# | // CHECK1-NEXT: store i32 4, ptr [[TMP5]], align 4
# |                 ^
# | <stdin>:36:96: note: scanning from here
# |  %5 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                ^
# | <stdin>:36:96: note: with "TMP5" equal to "%5"
# |  %5 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0
# |                                                                                                ^
# | <stdin>:37:2: note: possible intended match here
# |  store i32 5, ptr %5, align 4
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp:81:74: error: undefined variable: GLOB3
# | // CHECK1-NEXT: call void (ptr, i32, ptr, ...) @__kmpc_fork_teams(ptr @[[GLOB3]], i32 0, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z9gtid_testv_l16.omp_outlined)
# |                                                                          ^
# | <stdin>:79:2: note: possible intended match here
# |  call void (ptr, i32, ptr, ...) @__kmpc_fork_teams(ptr @3, i32 0, ptr @__omp_offloading_db_c7da0__Z9gtid_testv_l16.omp_outlined)
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp:130:73: error: undefined variable: GLOB3
# | // CHECK1-NEXT: call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @[[GLOB3]], i32 2, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z9gtid_testv_l16.omp_outlined.omp_outlined, i64 [[TMP8]], i64 [[TMP10]])
# |                                                                         ^
# | <stdin>:132:26: note: with "TMP8" equal to "%8"
# |  %10 = zext i32 %9 to i64
# |                          ^
# | <stdin>:132:26: note: with "TMP10" equal to "%10"
# |  %10 = zext i32 %9 to i64
# |                          ^
# | <stdin>:133:2: note: possible intended match here
# |  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @3, i32 2, ptr @__omp_offloading_db_c7da0__Z9gtid_testv_l16.omp_outlined.omp_outlined, i64 %8, i64 %10)
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            31:  store ptr null, ptr %1, align 8 
# |            32:  %2 = getelementptr inbounds [1 x ptr], ptr %.offload_mappers, i64 0, i64 0 
# |            33:  store ptr null, ptr %2, align 8 
# |            34:  %3 = getelementptr inbounds [1 x ptr], ptr %.offload_baseptrs, i32 0, i32 0 
# |            35:  %4 = getelementptr inbounds [1 x ptr], ptr %.offload_ptrs, i32 0, i32 0 
# |            36:  %5 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 0 
# | next:41'0                                                                                                     X error: no match found
# | next:41'1                                                                                                       with "TMP5" equal to "%5"
# |            37:  store i32 5, ptr %5, align 4 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:41'2       ?                             possible intended match
# |            38:  %6 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 1 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            39:  store i32 1, ptr %6, align 4 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            40:  %7 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 2 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            41:  store ptr %3, ptr %7, align 8 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            42:  %8 = getelementptr inbounds nuw %struct.__tgt_kernel_arguments, ptr %kernel_args, i32 0, i32 3 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |            73:  
# | next:41'0      ~
# |            74: ; Function Attrs: noinline norecurse nounwind optnone 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            75: define internal void @__omp_offloading_db_c7da0__Z9gtid_testv_l16(ptr noalias noundef %dyn_ptr) #1 { 
# | next:41'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            76: entry: 
# |            77:  %dyn_ptr.addr = alloca ptr, align 8 
# |            78:  store ptr %dyn_ptr, ptr %dyn_ptr.addr, align 8 
# | next:81'0                                                     X error: match failed for invalid pattern
# | next:81'1                                                       undefined variable: GLOB3
# |            79:  call void (ptr, i32, ptr, ...) @__kmpc_fork_teams(ptr @3, i32 0, ptr @__omp_offloading_db_c7da0__Z9gtid_testv_l16.omp_outlined) 
# | next:81'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:81'2       ?                                                                                                                                possible intended match
# |            80:  ret void 
# | next:81'0      ~~~~~~~~~~
# |            81: } 
# | next:81'0      ~~
# |            82:  
# | next:81'0      ~
# |            83: ; Function Attrs: noinline norecurse nounwind optnone 
# | next:81'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            84: define internal void @__omp_offloading_db_c7da0__Z9gtid_testv_l16.omp_outlined(ptr noalias noundef %.global_tid., ptr noalias noundef %.bound_tid.) #1 { 
# | next:81'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           127:  
# |           128: omp.inner.for.body: ; preds = %omp.inner.for.cond 
# |           129:  %7 = load i32, ptr %.omp.comb.lb, align 4 
# |           130:  %8 = zext i32 %7 to i64 
# |           131:  %9 = load i32, ptr %.omp.comb.ub, align 4 
# |           132:  %10 = zext i32 %9 to i64 
# | next:130'0                              X error: match failed for invalid pattern
# | next:130'1                                undefined variable: GLOB3
# | next:130'2                                with "TMP8" equal to "%8"
# | next:130'3                                with "TMP10" equal to "%10"
# |           133:  call void (ptr, i32, ptr, ...) @__kmpc_fork_call(ptr @3, i32 2, ptr @__omp_offloading_db_c7da0__Z9gtid_testv_l16.omp_outlined.omp_outlined, i64 %8, i64 %10) 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:130'4      ?                                                                                                                                                             possible intended match
# |           134:  br label %omp.inner.for.inc 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           135:  
# | next:130'0     ~
# |           136: omp.inner.for.inc: ; preds = %omp.inner.for.body 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           137:  %11 = load i32, ptr %.omp.iv, align 4 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           138:  %12 = load i32, ptr %.omp.stride, align 4 
# | next:130'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

### MLIR
<details>
<summary>MLIR.Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/mlir-translate -mlir-to-llvmir -split-input-file /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --check-prefixes=AMDGCN,NVPTX /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/mlir-translate -mlir-to-llvmir -split-input-file /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --check-prefixes=AMDGCN,NVPTX /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir:55:12: error: AMDGCN: expected string not found in input
# | // AMDGCN: @{{.*}}_kernel_environment = {{.*}} %struct.ConfigurationEnvironmentTy { {{.*}}i32 16, i32 1024 }
# |            ^
# | <stdin>:1:1: note: scanning from here
# | ; ModuleID = 'LLVMDialectModule'
# | ^
# | <stdin>:18:128: note: possible intended match here
# | @__omp_offloading_deadf17e_8eaf7fbf_test_array_reduction__l29_kernel_environment = weak_odr protected addrspace(1) constant %struct.KernelEnvironmentTy { %struct.ConfigurationEnvironmentTy { i8 0, i8 1, i8 2, i32 1, i32 256, i32 0, i32 0, i32 16, i32 0 }, ptr addrspacecast (ptr addrspace(1) @2 to ptr), ptr addrspacecast (ptr addrspace(1) @__omp_offloading_deadf17e_8eaf7fbf_test_array_reduction__l29_dynamic_environment to ptr) }
# |                                                                                                                                ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir:123:11: error: NVPTX: expected string not found in input
# | // NVPTX: @{{.*}}_kernel_environment = {{.*}} %struct.ConfigurationEnvironmentTy { {{.*}}i32 16, i32 1024 }
# |           ^
# | <stdin>:500:19: note: scanning from here
# |  store ptr %8, ptr %12, align 8
# |                   ^
# | <stdin>:548:115: note: possible intended match here
# | @__omp_offloading_deadf17e_41702d33_test_array_reduction__l26_kernel_environment = weak_odr protected constant %struct.KernelEnvironmentTy { %struct.ConfigurationEnvironmentTy { i8 0, i8 1, i8 2, i32 1, i32 128, i32 0, i32 0, i32 16, i32 0 }, ptr @2, ptr @__omp_offloading_deadf17e_41702d33_test_array_reduction__l26_dynamic_environment }
# |                                                                                                                   ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              1: ; ModuleID = 'LLVMDialectModule' 
# | check:55'0      X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |              2: source_filename = "LLVMDialectModule" 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              3: target datalayout = "A5-G1" 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              4: target triple = "amdgcn-amd-amdhsa" 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              5:  
# | check:55'0      ~
# |              6: %struct.ident_t = type { i32, i32, i32, i32, ptr } 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |             13: @__omp_offloading_deadf17e_8eaf7fbf_test_array_reduction__l29_exec_mode = weak protected addrspace(1) constant i8 2 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             14: @llvm.compiler.used = appending addrspace(1) global [1 x ptr] [ptr addrspacecast (ptr addrspace(1) @__omp_offloading_deadf17e_8eaf7fbf_test_array_reduction__l29_exec_mode to ptr)], section "llvm.metadata" 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             15: @1 = private unnamed_addr addrspace(1) constant [23 x i8] c";unknown;unknown;0;0;;\00", align 1 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             16: @2 = private unnamed_addr addrspace(1) constant %struct.ident_t { i32 0, i32 2, i32 0, i32 22, ptr addrspacecast (ptr addrspace(1) @1 to ptr) }, align 8 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             17: @__omp_offloading_deadf17e_8eaf7fbf_test_array_reduction__l29_dynamic_environment = weak_odr protected addrspace(1) global %struct.DynamicEnvironmentTy zeroinitializer 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             18: @__omp_offloading_deadf17e_8eaf7fbf_test_array_reduction__l29_kernel_environment = weak_odr protected addrspace(1) constant %struct.KernelEnvironmentTy { %struct.ConfigurationEnvironmentTy { i8 0, i8 1, i8 2, i32 1, i32 256, i32 0, i32 0, i32 16, i32 0 }, ptr addrspacecast (ptr addrspace(1) @2 to ptr), ptr addrspacecast (ptr addrspace(1) @__omp_offloading_deadf17e_8eaf7fbf_test_array_reduction__l29_dynamic_environment to ptr) } 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:55'1                                                                                                                                     ?                                                                                                                                                                                                                                                                                                                 possible intended match
# |             19: @3 = private unnamed_addr addrspace(1) constant %struct.ident_t { i32 0, i32 2562, i32 0, i32 22, ptr addrspacecast (ptr addrspace(1) @1 to ptr) }, align 8 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             20: @__openmp_nvptx_data_transfer_temporary_storage = weak addrspace(3) global [32 x i32] undef 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             21: @4 = private unnamed_addr addrspace(1) constant %struct.ident_t { i32 0, i32 66, i32 0, i32 22, ptr addrspacecast (ptr addrspace(1) @1 to ptr) }, align 8 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             22: @llvm.compiler.used.4 = appending addrspace(1) global [1 x ptr] [ptr addrspacecast (ptr addrspace(3) @__openmp_nvptx_data_transfer_temporary_storage to ptr)], section "llvm.metadata" 
# | check:55'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             23:  
# | check:55'0      ~
# |              .
# |              .
# |              .
# |            495:  %9 = load ptr, ptr %.addr2.ascast, align 8 
# |            496:  %10 = getelementptr inbounds [1 x ptr], ptr %9, i64 0, i64 0 
# |            497:  %11 = load ptr, ptr %10, align 8 
# |            498:  call void @llvm.memcpy.p0.p0.i64(ptr align 8 %.ascast, ptr align 8 %11, i64 48, i1 false) 
# |            499:  %12 = getelementptr { ptr, i64, i32, i8, i8, i8, i8, [1 x [3 x i64]] }, ptr %.ascast, i32 0, i32 0 
# |            500:  store ptr %8, ptr %12, align 8 
# | check:123'0                       X~~~~~~~~~~~~~ error: no match found
# |            501:  store ptr %.ascast, ptr %6, align 8 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            502:  %13 = load ptr, ptr %.addr2.ascast, align 8 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            503:  call void @"__omp_offloading_deadf17e_8eaf7fbf_test_array_reduction__l29_omp$reduction$reduction_func"(ptr %13, ptr %.omp.reduction.red_list.ascast) #2 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            504:  ret void 
# | check:123'0     ~~~~~~~~~~
# |            505: } 
# | check:123'0     ~~
# |              .
# |              .
# |              .
# |            543: @__omp_offloading_deadf17e_41702d33_test_array_reduction__l26_exec_mode = weak protected constant i8 2 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            544: @llvm.compiler.used = appending global [1 x ptr] [ptr @__omp_offloading_deadf17e_41702d33_test_array_reduction__l26_exec_mode], section "llvm.metadata" 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            545: @1 = private unnamed_addr constant [23 x i8] c";unknown;unknown;0;0;;\00", align 1 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            546: @2 = private unnamed_addr constant %struct.ident_t { i32 0, i32 2, i32 0, i32 22, ptr @1 }, align 8 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            547: @__omp_offloading_deadf17e_41702d33_test_array_reduction__l26_dynamic_environment = weak_odr protected global %struct.DynamicEnvironmentTy zeroinitializer 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            548: @__omp_offloading_deadf17e_41702d33_test_array_reduction__l26_kernel_environment = weak_odr protected constant %struct.KernelEnvironmentTy { %struct.ConfigurationEnvironmentTy { i8 0, i8 1, i8 2, i32 1, i32 128, i32 0, i32 0, i32 16, i32 0 }, ptr @2, ptr @__omp_offloading_deadf17e_41702d33_test_array_reduction__l26_dynamic_environment } 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:123'1                                                                                                                       ?                                                                                                                                                                                                                                 possible intended match
# |            549: @3 = private unnamed_addr constant %struct.ident_t { i32 0, i32 2562, i32 0, i32 22, ptr @1 }, align 8 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            550: @__openmp_nvptx_data_transfer_temporary_storage = weak addrspace(3) global [32 x i32] undef 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            551: @4 = private unnamed_addr constant %struct.ident_t { i32 0, i32 66, i32 0, i32 22, ptr @1 }, align 8 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            552: @llvm.compiler.used4 = appending global [1 x ptr] [ptr addrspacecast (ptr addrspace(3) @__openmp_nvptx_data_transfer_temporary_storage to ptr)], section "llvm.metadata" 
# | check:123'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            553:  
# | check:123'0     ~
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</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/195102


More information about the Mlir-commits mailing list