xref: /llvm-project/flang/test/Lower/return-statement.f90 (revision f35f863a88f83332bef9605ef4cfe4f05c066efb)
1! RUN: bbc %s -o "-" -emit-fir -hlfir=false | FileCheck %s
2
3program basic
4  return
5end program
6
7! CHECK-LABEL: func @_QQmain() attributes {fir.bindc_name = "basic"} {
8! CHECK:         return
9! CHECK:       }
10
11subroutine sub1()
12  return
13end
14
15! CHECK-LABEL: func @_QPsub1() {
16! CHECK:         cf.br ^bb1
17! CHECK:       ^bb1:  // pred: ^bb0
18! CHECK:         return
19
20subroutine sub2()
21  goto 3
22  2 return
23  3 goto 2
24end
25
26! CHECK-LABEL: func @_QPsub2() {
27! CHECK:         cf.br ^bb2
28! CHECK:       ^bb1:  // pred: ^bb2
29! CHECK:         cf.br ^bb3
30! CHECK:       ^bb2:  // pred: ^bb0
31! CHECK:         cf.br ^bb1
32! CHECK:       ^bb3:  // pred: ^bb1
33! CHECK:         return
34
35