[flang-commits] [flang] [flang][NFC] use hlfir.declare first result when both results are raw pointers (PR #132261)

LLVM Continuous Integration via flang-commits flang-commits at lists.llvm.org
Fri Mar 21 03:49:54 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `openmp-offload-sles-build-only` running on `rocm-worker-hw-04-sles` while building `flang` at step 7 "Add check check-flang".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/140/builds/19497

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 7 (Add check check-flang) failure: test (failure)
******************** TEST 'Flang :: Lower/OpenMP/atomic-update.f90' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 4: bbc -fopenmp -J /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/runtimes/runtimes-bins/openmp/runtime/src -fopenmp-version=50 -emit-hlfir /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/test/Lower/OpenMP/atomic-update.f90 -o - | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/test/Lower/OpenMP/atomic-update.f90
+ bbc -fopenmp -J /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/runtimes/runtimes-bins/openmp/runtime/src -fopenmp-version=50 -emit-hlfir /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/test/Lower/OpenMP/atomic-update.f90 -o -
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/test/Lower/OpenMP/atomic-update.f90
/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/test/Lower/OpenMP/atomic-update.f90:44:9: error: CHECK: expected string not found in input
!CHECK: %[[EMBOX:.*]] = fir.embox %[[VAL_C_DECLARE]]#1 : (!fir.ref<i32>) -> !fir.box<!fir.ptr<i32>>
        ^
<stdin>:278:103: note: scanning from here
 %272:2 = hlfir.declare %271 {uniq_name = "_QFEz"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>)
                                                                                                      ^
<stdin>:278:103: note: with "VAL_C_DECLARE" equal to "9"
 %272:2 = hlfir.declare %271 {uniq_name = "_QFEz"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>)
                                                                                                      ^
<stdin>:279:2: note: possible intended match here
 %273 = fir.embox %9#0 : (!fir.ref<i32>) -> !fir.box<!fir.ptr<i32>>
 ^

Input file: <stdin>
Check file: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/test/Lower/OpenMP/atomic-update.f90

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
          273:  %267 = fir.alloca i32 {bindc_name = "x", uniq_name = "_QFEx"} 
          274:  %268:2 = hlfir.declare %267 {uniq_name = "_QFEx"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>) 
          275:  %269 = fir.alloca i32 {bindc_name = "y", uniq_name = "_QFEy"} 
          276:  %270:2 = hlfir.declare %269 {uniq_name = "_QFEy"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>) 
          277:  %271 = fir.alloca i32 {bindc_name = "z", uniq_name = "_QFEz"} 
          278:  %272:2 = hlfir.declare %271 {uniq_name = "_QFEz"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>) 
check:44'0                                                                                                           X error: no match found
check:44'1                                                                                                             with "VAL_C_DECLARE" equal to "9"
          279:  %273 = fir.embox %9#0 : (!fir.ref<i32>) -> !fir.box<!fir.ptr<i32>> 
check:44'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:44'2      ?                                                                   possible intended match
          280:  fir.store %273 to %3#0 : !fir.ref<!fir.box<!fir.ptr<i32>>> 
check:44'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          281:  %274 = fir.embox %11#0 : (!fir.ref<i32>) -> !fir.box<!fir.ptr<i32>> 
check:44'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          282:  fir.store %274 to %7#0 : !fir.ref<!fir.box<!fir.ptr<i32>>> 
check:44'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          283:  %c3 = arith.constant 3 : index 
check:44'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

```

</details>

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


More information about the flang-commits mailing list