1 // RUN: %clang_cc1 -triple avr -emit-llvm %s -o - | FileCheck %s
2 
3 // Structure that is more than 8 bytes.
4 struct s10 {
5   int a, b, c, d, e;
6 };
7 
8 // Structure that is less than 8 bytes.
9 struct s06 {
10   int a, b, c;
11 };
12 
13 struct s10 foo10(int a, int b, int c) {
14   struct s10 a0;
15   return a0;
16 }
17 
18 struct s06 foo06(int a, int b, int c) {
19   struct s06 a0;
20   return a0;
21 }
22 
23 // CHECK: %struct.s10 = type { i16, i16, i16, i16, i16 }
24 // CHECK: %struct.s06 = type { i16, i16, i16 }
25 // CHECK: define{{.*}} void @foo10(%struct.s10* {{.*}}, i16 noundef %a, i16 noundef %b, i16 noundef %c)
26 // CHECK: define{{.*}} %struct.s06 @foo06(i16 noundef %a, i16 noundef %b, i16 noundef %c)
27