blob: 0daa970e760aaf2a3637ceb4c10275e9f6b7b0dd [file] [log] [blame]
Daniel Dunbaredfac032012-03-10 01:03:58 +00001// RUN: %clang_cc1 -emit-llvm %s -o %t -triple=x86_64-apple-darwin10
2// RUN: FileCheck < %t %s
Eli Friedman70cbd2a2011-06-15 18:26:32 +00003
Daniel Dunbaredfac032012-03-10 01:03:58 +00004// Make sure this doesn't crash. We used to generate a byval here and wanted to
5// verify a valid alignment, but we now realize we can use an i16 and let the
6// backend guarantee the alignment.
Eli Friedman70cbd2a2011-06-15 18:26:32 +00007
8void a(int,int,int,int,int,int,__complex__ char);
9void b(__complex__ char *y) { a(0,0,0,0,0,0,*y); }
10// CHECK: define void @b
Chris Lattner9cbe4f02011-07-09 17:41:47 +000011// CHECK: alloca { i8, i8 }*, align 8
Daniel Dunbaredfac032012-03-10 01:03:58 +000012// CHECK: call void @a(i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i16 {{.*}})