llvm/test/Verifier/inalloca1.ll
Reid Kleckner ad60d3c304 Change inalloca rules to make it only apply to the last parameter
This makes things a lot easier, because we can now talk about the
"argument allocation", which allocates all the memory for the call in
one shot.

The only functional change is to the verifier for a feature that hasn't
shipped yet.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199434 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-16 22:59:24 +00:00

23 lines
649 B
LLVM

; RUN: not llvm-as %s -o /dev/null 2>&1 | FileCheck %s
declare void @a(i64* byval inalloca %p)
; CHECK: Attributes {{.*}} are incompatible
declare void @b(i64* inreg inalloca %p)
; CHECK: Attributes {{.*}} are incompatible
declare void @c(i64* sret inalloca %p)
; CHECK: Attributes {{.*}} are incompatible
declare void @d(i64* nest inalloca %p)
; CHECK: Attributes {{.*}} are incompatible
declare void @e(i64* readonly inalloca %p)
; CHECK: Attributes {{.*}} are incompatible
declare void @f(void ()* inalloca %p)
; CHECK: do not support unsized types
declare void @g(i32* inalloca %p, i32 %p2)
; CHECK: inalloca isn't on the last parameter!