[RISCV][VLOPT] Add vector narrowing integer right shift instructions to isSupportedIn...
[llvm-project.git] / flang / test / Fir / is_assumed_size-codegen.fir
blob646446c00e87992933b1e07a880e1736f4c469cc
1 // Test fir.is_assumed_size lowering to runtime calls in fir-assumed-rank-op pass.
2 // RUN: fir-opt -o - --fir-assumed-rank-op %s | FileCheck %s
4 func.func @test_ranked(%arg0: !fir.class<!fir.array<?xnone>> ) -> i1 {
5   %1 = fir.is_assumed_size %arg0 : (!fir.class<!fir.array<?xnone>>) -> i1
6   return %1 : i1
9 func.func @test_assumed_rank(%arg0: !fir.box<!fir.array<*:f32>> ) -> i1 {
10   %1 = fir.is_assumed_size %arg0 : (!fir.box<!fir.array<*:f32>>) -> i1
11   return %1 : i1
13 // CHECK-LABEL:   func.func @test_ranked(
14 // CHECK-SAME:                           %[[VAL_0:.*]]: !fir.class<!fir.array<?xnone>>) -> i1 {
15 // CHECK:           %[[VAL_1:.*]] = fir.convert %[[VAL_0]] : (!fir.class<!fir.array<?xnone>>) -> !fir.box<none>
16 // CHECK:           %[[VAL_2:.*]] = fir.call @_FortranAIsAssumedSize(%[[VAL_1]]) : (!fir.box<none>) -> i1
17 // CHECK:           return %[[VAL_2]] : i1
18 // CHECK:         }
20 // CHECK-LABEL:   func.func @test_assumed_rank(
21 // CHECK-SAME:                                 %[[VAL_0:.*]]: !fir.box<!fir.array<*:f32>>) -> i1 {
22 // CHECK:           %[[VAL_1:.*]] = fir.convert %[[VAL_0]] : (!fir.box<!fir.array<*:f32>>) -> !fir.box<none>
23 // CHECK:           %[[VAL_2:.*]] = fir.call @_FortranAIsAssumedSize(%[[VAL_1]]) : (!fir.box<none>) -> i1
24 // CHECK:           return %[[VAL_2]] : i1
25 // CHECK:         }