[llvm-branch-commits] [flang] [DRAFT] [flang][OpenMP] Support loop-associated metadirective variants (part 3) (PR #195344)

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Thu May 7 14:56:35 PDT 2026


github-actions[bot] wrote:

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

* 4256 tests passed
* 204 tests skipped
* 1 test failed

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

### Flang
<details>
<summary>Flang.Lower/OpenMP/metadirective-loop.f90</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/flang -fc1 -fopenmp -emit-hlfir -fopenmp-version=51 /home/gha/actions-runner/_work/llvm-project/llvm-project/flang/test/Lower/OpenMP/metadirective-loop.f90 -o - | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/flang/test/Lower/OpenMP/metadirective-loop.f90
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/flang -fc1 -fopenmp -emit-hlfir -fopenmp-version=51 /home/gha/actions-runner/_work/llvm-project/llvm-project/flang/test/Lower/OpenMP/metadirective-loop.f90 -o -
# .---command stderr------------
# | warning: OpenMP support for version 51 in flang is still incomplete
# `-----------------------------
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/flang/test/Lower/OpenMP/metadirective-loop.f90
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/flang/test/Lower/OpenMP/metadirective-loop.f90:144:10: error: CHECK: expected string not found in input
# | ! CHECK: omp.simd private(@{{[^,]*}}Ei_private_i32 {{[^:]*}} : !fir.ref<i32>)
# |          ^
# | <stdin>:333:10: note: scanning from here
# |  } else {
# |          ^
# | <stdin>:337:82: note: possible intended match here
# |  omp.simd linear(%3#0 : !fir.ref<i32> = %c1_i32_0 : i32) private(@_QFtest_dynamic_loop_dsa_isolationEi_private_i32 %3#0 -> %arg3 : !fir.ref<i32>) {
# |                                                                                  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/flang/test/Lower/OpenMP/metadirective-loop.f90
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |            328:  hlfir.assign %36 to %5#0 : i32, !fir.ref<i32> 
# |            329:  } 
# |            330:  omp.yield 
# |            331:  } 
# |            332:  } 
# |            333:  } else { 
# | check:144'0              X error: no match found
# |            334:  %c1_i32 = arith.constant 1 : i32 
# | check:144'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            335:  %13 = fir.load %6#0 : !fir.ref<i32> 
# | check:144'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            336:  %c1_i32_0 = arith.constant 1 : i32 
# | check:144'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            337:  omp.simd linear(%3#0 : !fir.ref<i32> = %c1_i32_0 : i32) private(@_QFtest_dynamic_loop_dsa_isolationEi_private_i32 %3#0 -> %arg3 : !fir.ref<i32>) { 
# | check:144'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:144'1                                                                                      ?                                                                   possible intended match
# |            338:  omp.loop_nest (%arg4) : i32 = (%c1_i32) to (%13) inclusive step (%c1_i32_0) { 
# | check:144'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            339:  %14:2 = hlfir.declare %arg3 {uniq_name = "_QFtest_dynamic_loop_dsa_isolationEi"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>) 
# | check:144'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            340:  hlfir.assign %arg4 to %14#0 : i32, !fir.ref<i32> 
# | check:144'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            341:  %c1_i32_1 = arith.constant 1 : i32 
# | check:144'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            342:  %15 = fir.convert %c1_i32_1 : (i32) -> index 
# | check:144'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/195344


More information about the llvm-branch-commits mailing list