[flang-commits] [flang] [draft][flang] Query backend support for quad-precision compilation decision (PR #182230)

via flang-commits flang-commits at lists.llvm.org
Wed Feb 18 23:53:54 PST 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results

* 3962 tests passed
* 245 tests skipped
* 6 tests failed

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

### Flang
<details>
<summary>Flang.Lower/HLFIR/convert-variable.f90</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
bbc -emit-hlfir C:\_work\llvm-project\llvm-project\flang\test\Lower\HLFIR\convert-variable.f90 -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\flang\test\Lower\HLFIR\convert-variable.f90 --check-prefixes=CHECK,F64
# executed command: bbc -emit-hlfir 'C:\_work\llvm-project\llvm-project\flang\test\Lower\HLFIR\convert-variable.f90' -o -
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\flang\test\Lower\HLFIR\convert-variable.f90' --check-prefixes=CHECK,F64
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\flang\test\Lower\HLFIR\convert-variable.f90:76:13: error: F64-SAME: expected string not found in input
# | ! F64-SAME: %[[VAL_0:.*]]: !fir.ref<!fir.array<100xf64>>
# |             ^
# | <stdin>:53:44: note: scanning from here
# |  func.func @_QPscalar_numeric_attributes_2(%arg0: !fir.ref<!fir.array<100xf128>> {fir.bindc_name = "x"}) {
# |                                            ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\flang\test\Lower\HLFIR\convert-variable.f90
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |          .
# |          .
# |          .
# |         48:  func.func @_QPscalar_numeric_attributes(%arg0: !fir.ref<i32> {fir.bindc_name = "x", fir.optional, fir.target}) { 
# |         49:  %0 = fir.dummy_scope : !fir.dscope 
# |         50:  %1:2 = hlfir.declare %arg0 dummy_scope %0 arg 1 {fortran_attrs = #fir.var_attrs<intent_in, optional, target>, uniq_name = "_QFscalar_numeric_attributesEx"} : (!fir.ref<i32>, !fir.dscope) -> (!fir.ref<i32>, !fir.ref<i32>) 
# |         51:  return 
# |         52:  } 
# |         53:  func.func @_QPscalar_numeric_attributes_2(%arg0: !fir.ref<!fir.array<100xf128>> {fir.bindc_name = "x"}) { 
# | same:76                                                X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |         54:  %0 = fir.dummy_scope : !fir.dscope 
# | same:76     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |         55:  %1 = fir.address_of(@_QFscalar_numeric_attributes_2ECrk) : !fir.ref<i32> 
# | same:76     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |         56:  %2:2 = hlfir.declare %1 {fortran_attrs = #fir.var_attrs<parameter>, uniq_name = "_QFscalar_numeric_attributes_2ECrk"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>) 
# | same:76     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |         57:  %c100 = arith.constant 100 : index 
# | same:76     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |         58:  %3 = fir.shape %c100 : (index) -> !fir.shape<1> 
# | same:76     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          .
# |          .
# |          .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>Flang.Lower/Intrinsics/abs.f90</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
bbc -emit-fir -hlfir=false C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\abs.f90 -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\abs.f90 --check-prefixes=CHECK,CMPLX,CMPLX-PRECISE,F64
# executed command: bbc -emit-fir -hlfir=false 'C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\abs.f90' -o -
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\abs.f90' --check-prefixes=CHECK,CMPLX,CMPLX-PRECISE,F64
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\abs.f90:89:13: error: F64-SAME: expected string not found in input
# | ! F64-SAME: %[[VAL_0:.*]]: !fir.ref<f64>{{.*}}, %[[VAL_1:.*]]: !fir.ref<f64>{{.*}}) {
# |             ^
# | <stdin>:48:28: note: scanning from here
# |  func.func @_QPabs_testr16(%arg0: !fir.ref<f128> {fir.bindc_name = "a"}, %arg1: !fir.ref<f128> {fir.bindc_name = "b"}) {
# |                            ^
# | <stdin>:49:2: note: possible intended match here
# |  %0 = fir.load %arg0 : !fir.ref<f128>
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\abs.f90
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            .
# |            .
# |            .
# |           43:  %0 = fir.load %arg0 : !fir.ref<f64> 
# |           44:  %1 = math.absf %0 fastmath<contract> : f64 
# |           45:  fir.store %1 to %arg1 : !fir.ref<f64> 
# |           46:  return 
# |           47:  } 
# |           48:  func.func @_QPabs_testr16(%arg0: !fir.ref<f128> {fir.bindc_name = "a"}, %arg1: !fir.ref<f128> {fir.bindc_name = "b"}) { 
# | same:89'0                                X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |           49:  %0 = fir.load %arg0 : !fir.ref<f128> 
# | same:89'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:89'1      ?                                     possible intended match
# |           50:  %1 = math.absf %0 fastmath<contract> : f128 
# | same:89'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           51:  fir.store %1 to %arg1 : !fir.ref<f128> 
# | same:89'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           52:  return 
# | same:89'0     ~~~~~~~~
# |           53:  } 
# | same:89'0     ~~~
# |           54:  func.func @_QPabs_testzr(%arg0: !fir.ref<complex<f32>> {fir.bindc_name = "a"}, %arg1: !fir.ref<f32> {fir.bindc_name = "b"}) { 
# | same:89'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            .
# |            .
# |            .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>Flang.Lower/Intrinsics/modulo.f90</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
bbc -emit-fir -hlfir=false C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90 -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90 -check-prefixes=HONORINF,ALL
# executed command: bbc -emit-fir -hlfir=false 'C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90' -o -
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90' -check-prefixes=HONORINF,ALL
# note: command had no output on stdout or stderr
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\flang.exe -fc1 -menable-no-infs -emit-fir -flang-deprecated-no-hlfir C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90 -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90 -check-prefixes=CHECK,ALL,F64
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\flang.exe' -fc1 -menable-no-infs -emit-fir -flang-deprecated-no-hlfir 'C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90' -o -
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90' -check-prefixes=CHECK,ALL,F64
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90:43:13: error: F64-SAME: expected string not found in input
# | ! F64-SAME: %[[arg0:.*]]: !fir.ref<f64>{{.*}}, %[[arg1:.*]]: !fir.ref<f64>{{.*}}, %[[arg2:.*]]: !fir.ref<f64>{{.*}}) {
# |             ^
# | <stdin>:31:31: note: scanning from here
# |  func.func @_QPmodulo_testr16(%arg0: !fir.ref<f128> {fir.bindc_name = "r"}, %arg1: !fir.ref<f128> {fir.bindc_name = "a"}, %arg2: !fir.ref<f128> {fir.bindc_name = "p"}) {
# |                               ^
# | <stdin>:36:19: note: possible intended match here
# |  %3 = fir.convert %2 : (!fir.ref<!fir.char<1,74>>) -> !fir.ref<i8>
# |                   ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\modulo.f90
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            .
# |            .
# |            .
# |           26:  %7 = arith.addi %2, %1 : i64 
# |           27:  %8 = arith.select %6, %7, %2 : i64 
# |           28:  fir.store %8 to %arg0 : !fir.ref<i64> 
# |           29:  return 
# |           30:  } 
# |           31:  func.func @_QPmodulo_testr16(%arg0: !fir.ref<f128> {fir.bindc_name = "r"}, %arg1: !fir.ref<f128> {fir.bindc_name = "a"}, %arg2: !fir.ref<f128> {fir.bindc_name = "p"}) { 
# | same:43'0                                   X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |           32:  %0 = fir.load %arg1 : !fir.ref<f128> 
# | same:43'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           33:  %1 = fir.load %arg2 : !fir.ref<f128> 
# | same:43'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           34:  %2 = fir.address_of(@_QQclX0aacbf46e6685d26d30778c3c545d846) : !fir.ref<!fir.char<1,74>> 
# | same:43'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           35:  %c49_i32 = arith.constant 49 : i32 
# | same:43'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           36:  %3 = fir.convert %2 : (!fir.ref<!fir.char<1,74>>) -> !fir.ref<i8> 
# | same:43'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:43'1                       ?                                                 possible intended match
# |           37:  %4 = fir.call @_FortranAModuloReal16(%0, %1, %3, %c49_i32) fastmath<ninf,contract> : (f128, f128, !fir.ref<i8>, i32) -> f128 
# | same:43'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           38:  fir.store %4 to %arg0 : !fir.ref<f128> 
# | same:43'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           39:  return 
# | same:43'0     ~~~~~~~~
# |           40:  } 
# | same:43'0     ~~~
# |           41:  fir.global internal @_QFmodulo_testr16ECrk constant : i32 { 
# | same:43'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            .
# |            .
# |            .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>Flang.Lower/Intrinsics/sign.f90</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
bbc C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\sign.f90 -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\sign.f90 --check-prefixes=CHECK,F64
# executed command: bbc 'C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\sign.f90' -o -
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\sign.f90' --check-prefixes=CHECK,F64
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\sign.f90:29:9: error: F64: expected string not found in input
# |  ! F64: math.copysign{{.*}} : f64
# |         ^
# | <stdin>:31:27: note: scanning from here
# |  func.func @_QPsign_testr2(%arg0: !fir.ref<f128> {fir.bindc_name = "a"}, %arg1: !fir.ref<f128> {fir.bindc_name = "b"}, %arg2: !fir.ref<f128> {fir.bindc_name = "c"}) {
# |                           ^
# | <stdin>:40:7: note: possible intended match here
# |  %8 = math.copysign %6, %7 fastmath<contract> : f128
# |       ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\flang\test\Lower\Intrinsics\sign.f90
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            26:  %5 = fir.load %2#0 : !fir.ref<f32> 
# |            27:  %6 = math.copysign %4, %5 fastmath<contract> : f32 
# |            28:  hlfir.assign %6 to %3#0 : f32, !fir.ref<f32> 
# |            29:  return 
# |            30:  } 
# |            31:  func.func @_QPsign_testr2(%arg0: !fir.ref<f128> {fir.bindc_name = "a"}, %arg1: !fir.ref<f128> {fir.bindc_name = "b"}, %arg2: !fir.ref<f128> {fir.bindc_name = "c"}) { 
# | check:29'0                               X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |            32:  %0 = fir.dummy_scope : !fir.dscope 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            33:  %1:2 = hlfir.declare %arg0 dummy_scope %0 arg 1 {uniq_name = "_QFsign_testr2Ea"} : (!fir.ref<f128>, !fir.dscope) -> (!fir.ref<f128>, !fir.ref<f128>) 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            34:  %2:2 = hlfir.declare %arg1 dummy_scope %0 arg 2 {uniq_name = "_QFsign_testr2Eb"} : (!fir.ref<f128>, !fir.dscope) -> (!fir.ref<f128>, !fir.ref<f128>) 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            35:  %3:2 = hlfir.declare %arg2 dummy_scope %0 arg 3 {uniq_name = "_QFsign_testr2Ec"} : (!fir.ref<f128>, !fir.dscope) -> (!fir.ref<f128>, !fir.ref<f128>) 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            36:  %4 = fir.address_of(@_QFsign_testr2ECrk) : !fir.ref<i32> 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            37:  %5:2 = hlfir.declare %4 {fortran_attrs = #fir.var_attrs<parameter>, uniq_name = "_QFsign_testr2ECrk"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>) 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            38:  %6 = fir.load %1#0 : !fir.ref<f128> 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            39:  %7 = fir.load %2#0 : !fir.ref<f128> 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            40:  %8 = math.copysign %6, %7 fastmath<contract> : f128 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:29'1           ?                                               possible intended match
# |            41:  hlfir.assign %8 to %3#0 : f128, !fir.ref<f128> 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            42:  return 
# | check:29'0     ~~~~~~~~
# |            43:  } 
# | check:29'0     ~~~
# |            44:  fir.global internal @_QFsign_testr2ECrk constant : i32 { 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            45:  %c16_i32 = arith.constant 16 : i32 
# | check:29'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>Flang.Lower/assignment.f90</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\flang.exe -fc1 C:\_work\llvm-project\llvm-project\flang\test\Lower\assignment.f90 -o "-" -emit-fir -cpp -flang-deprecated-no-hlfir | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\flang\test\Lower\assignment.f90 --check-prefixes=CHECK,F64
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\flang.exe' -fc1 'C:\_work\llvm-project\llvm-project\flang\test\Lower\assignment.f90' -o - -emit-fir -cpp -flang-deprecated-no-hlfir
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\flang\test\Lower\assignment.f90' --check-prefixes=CHECK,F64
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\flang\test\Lower\assignment.f90:286:8: error: F64: expected string not found in input
# | ! F64: %[[E:.*]] = fir.alloca f64
# |        ^
# | <stdin>:153:21: note: scanning from here
# |  %2 = fir.alloca f64 {bindc_name = "c", uniq_name = "_QFreal_constantEc"}
# |                     ^
# | <stdin>:154:2: note: possible intended match here
# |  %3 = fir.alloca f80 {bindc_name = "d", uniq_name = "_QFreal_constantEd"}
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\flang\test\Lower\assignment.f90
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |            148:  return %8 : complex<f32> 
# |            149:  } 
# |            150:  func.func @_QPreal_constant() { 
# |            151:  %0 = fir.alloca f16 {bindc_name = "a", uniq_name = "_QFreal_constantEa"} 
# |            152:  %1 = fir.alloca f32 {bindc_name = "b", uniq_name = "_QFreal_constantEb"} 
# |            153:  %2 = fir.alloca f64 {bindc_name = "c", uniq_name = "_QFreal_constantEc"} 
# | check:286'0                         X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |            154:  %3 = fir.alloca f80 {bindc_name = "d", uniq_name = "_QFreal_constantEd"} 
# | check:286'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:286'1      ?                                                                         possible intended match
# |            155:  %4 = fir.alloca f128 {bindc_name = "e", uniq_name = "_QFreal_constantEe"} 
# | check:286'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            156:  %cst = arith.constant 2.000000e+00 : f16 
# | check:286'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            157:  fir.store %cst to %0 : !fir.ref<f16> 
# | check:286'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            158:  %cst_0 = arith.constant 4.000000e+00 : f32 
# | check:286'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            159:  fir.store %cst_0 to %1 : !fir.ref<f32> 
# | check:286'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>Flang.Lower/math-lowering/abs.f90</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
bbc -emit-fir C:\_work\llvm-project\llvm-project\flang\test\Lower\math-lowering\abs.f90 -o - --math-runtime=fast | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe --check-prefixes=ALL,FAST-F64 C:\_work\llvm-project\llvm-project\flang\test\Lower\math-lowering\abs.f90
# executed command: bbc -emit-fir 'C:\_work\llvm-project\llvm-project\flang\test\Lower\math-lowering\abs.f90' -o - --math-runtime=fast
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' --check-prefixes=ALL,FAST-F64 'C:\_work\llvm-project\llvm-project\flang\test\Lower\math-lowering\abs.f90'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\flang\test\Lower\math-lowering\abs.f90:35:13: error: FAST-F64: expected string not found in input
# | ! FAST-F64: {{%[A-Za-z0-9._]+}} = math.absf {{%[A-Za-z0-9._]+}} {{.*}}: f64
# |             ^
# | <stdin>:24:27: note: scanning from here
# |  func.func @_QPtest_real16(%arg0: !fir.ref<f128> {fir.bindc_name = "x"}) -> f128 {
# |                           ^
# | <stdin>:32:2: note: possible intended match here
# |  %7 = math.absf %6 fastmath<contract> : f128
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\flang\test\Lower\math-lowering\abs.f90
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            19:  %5 = math.absf %4 fastmath<contract> : f64 
# |            20:  fir.store %5 to %2 : !fir.ref<f64> 
# |            21:  %6 = fir.load %2 : !fir.ref<f64> 
# |            22:  return %6 : f64 
# |            23:  } 
# |            24:  func.func @_QPtest_real16(%arg0: !fir.ref<f128> {fir.bindc_name = "x"}) -> f128 { 
# | check:35'0                               X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |            25:  %0 = fir.dummy_scope : !fir.dscope 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            26:  %1 = fir.address_of(@_QFtest_real16ECrk) : !fir.ref<i32> 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            27:  %2 = fir.declare %1 {fortran_attrs = #fir.var_attrs<parameter>, uniq_name = "_QFtest_real16ECrk"} : (!fir.ref<i32>) -> !fir.ref<i32> 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            28:  %3 = fir.alloca f128 {bindc_name = "test_real16", uniq_name = "_QFtest_real16Etest_real16"} 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            29:  %4 = fir.declare %3 {uniq_name = "_QFtest_real16Etest_real16"} : (!fir.ref<f128>) -> !fir.ref<f128> 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            30:  %5 = fir.declare %arg0 dummy_scope %0 arg 1 {uniq_name = "_QFtest_real16Ex"} : (!fir.ref<f128>, !fir.dscope) -> !fir.ref<f128> 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            31:  %6 = fir.load %5 : !fir.ref<f128> 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            32:  %7 = math.absf %6 fastmath<contract> : f128 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:35'1      ?                                            possible intended match
# |            33:  fir.store %7 to %4 : !fir.ref<f128> 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            34:  %8 = fir.load %4 : !fir.ref<f128> 
# | check:35'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            35:  return %8 : f128 
# | check:35'0     ~~~~~~~~~~~~~~~~~~
# |            36:  } 
# | check:35'0     ~~~
# |            37:  func.func @_QPtest_complex4(%arg0: !fir.ref<complex<f32>> {fir.bindc_name = "c"}) -> complex<f32> { 
# | check:35'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/182230


More information about the flang-commits mailing list