1RUN: llvm-dis %p/Inputs/x86_intrcc_upgrade.bc -opaque-pointers=0 -o - | FileCheck %s
2RUN: llvm-dis %p/Inputs/x86_intrcc_upgrade.bc -opaque-pointers=1 -o - | FileCheck %s --check-prefix=OPAQUE
3
4Make sure we upgrade x86_intrcc to a byval with explicit type
5
6CHECK: define x86_intrcc void @no_args() {
7CHECK: define x86_intrcc void @non_byval_ptr_arg0(i32* byval(i32) %0)
8CHECK: define x86_intrcc void @non_byval_ptr_struct(%struct* byval(%struct) %0)
9
10CHECK: declare x86_intrcc void @no_args_decl()
11CHECK: declare x86_intrcc void @non_byval_ptr_arg0_decl(i32* byval(i32))
12CHECK: declare x86_intrcc void @non_byval_ptr_struct_decl(%struct* byval(%struct))
13
14OPAQUE: define x86_intrcc void @no_args() {
15OPAQUE: define x86_intrcc void @non_byval_ptr_arg0(ptr byval(i32) %0)
16OPAQUE: define x86_intrcc void @non_byval_ptr_struct(ptr byval(%struct) %0)
17
18OPAQUE: declare x86_intrcc void @no_args_decl()
19OPAQUE: declare x86_intrcc void @non_byval_ptr_arg0_decl(ptr byval(i32))
20OPAQUE: declare x86_intrcc void @non_byval_ptr_struct_decl(ptr byval(%struct))
21