21 changes: 21 additions & 0 deletions llvm/test/Verifier/x86_intr.ll
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
; RUN: not llvm-as < %s 2>&1 | FileCheck %s

; CHECK: Calling convention parameter requires byval
; CHECK-NEXT: void (i32)* @non_ptr_arg0
define x86_intrcc void @non_ptr_arg0(i32) {
ret void
}

; CHECK: Calling convention parameter requires byval
; CHECK-NEXT: void (i32*)* @non_byval_ptr_arg0
define x86_intrcc void @non_byval_ptr_arg0(i32*) {
ret void
}

; CHECK: Calling convention parameter requires byval
; CHECK-NEXT: void (i32)* @non_ptr_arg0_decl
declare x86_intrcc void @non_ptr_arg0_decl(i32)

; CHECK: Calling convention parameter requires byval
; CHECK-NEXT: void (i32*)* @non_byval_ptr_arg0_decl
declare x86_intrcc void @non_byval_ptr_arg0_decl(i32*)