1 // RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-llvm -o - %s | FileCheck %s 2 3 struct s0 { 4 int Start, End; 5 unsigned Alignment; 6 int TheStores __attribute__((aligned(16))); 7 }; 8 9 // CHECK: define void @f0 10 // CHECK: alloca %struct.s0, align 16 11 extern "C" void f0() { 12 (void) s0(); 13 } 14 15 // CHECK: define void @f1 16 // CHECK: alloca %struct.s0, align 16 17 extern "C" void f1() { 18 (void) (struct s0) { 0, 0, 0, 0 }; 19 } 20 21 // CHECK: define i32 @f2 22 // CHECK: alloca %struct.s1, align 2 23 struct s1 { short x; short y; }; 24 extern "C" struct s1 f2(int a, struct s1 *x, struct s1 *y) { 25 if (a) 26 return *x; 27 return *y; 28 } 29