[Clang] Make OpenMP offloading consistently use the bound architecture (#125135)
[llvm-project.git] / flang / test / Lower / module-generic-with-specific-mangling.f90
blob18a0211b5524c6d74ee150c9bdbd6791e0523f95
1 ! RUN: split-file %s %t
2 ! RUN: bbc -emit-fir %t/mangling_mod_a.f90 -o - | FileCheck %s --check-prefix=FIR
3 ! RUN: bbc -emit-fir %t/mangling_mod_b.f90 -o - | FileCheck %s --check-prefix=MANGLE
4 ! RUN: bbc -emit-fir %t/mangling_mod_c.f90 -o - | FileCheck %s --check-prefix=MANGLE
5 ! RUN: bbc -emit-fir %t/mangling_mod_d.f90 -o - | FileCheck %s --check-prefix=MANGLE
7 ! FIR: module
8 ! MANGLE: func.func private @_QPmy_sub(!fir.ref<i32>)
10 !--- mangling_mod_a.f90
11 module mangling_mod_a
12 interface
13 subroutine my_sub(a)
14 integer :: a
15 end subroutine my_sub
16 end interface
18 ! Generic interface
19 interface my_sub
20 procedure :: my_sub
21 end interface
22 contains
23 end module mangling_mod_a
25 !--- mangling_mod_b.f90
26 module mangling_mod_b
27 use mangling_mod_a
29 contains
30 subroutine my_sub2(a)
31 integer :: a
32 call my_sub(a)
33 end subroutine my_sub2
35 end module mangling_mod_b
37 !--- mangling_mod_c.f90
38 module mangling_mod_c
39 use mangling_mod_b
41 contains
42 subroutine my_sub3(a)
43 integer :: a
45 call my_sub(a)
46 end subroutine my_sub3
47 end module mangling_mod_c
49 !--- mangling_mod_d.f90
50 module mangling_mod_d
51 use mangling_mod_b
52 use mangling_mod_c
54 contains
55 subroutine my_sub4(a)
56 integer :: a
58 call my_sub(a)
59 end subroutine my_sub4
60 end module mangling_mod_d