1 /* Test that LoongArch backend ignores zero-sized fields of aggregates in
2 argument passing. */
3
4 /* { dg-do compile } */
5 /* { dg-options "-O2 -mdouble-float -mabi=lp64d" } */
6 /* { dg-final { scan-assembler "\\\$f1" } } */
7
8 struct test
9 {
10 int empty1[0];
11 double empty2[0];
12 int : 0;
13 float x;
14 long empty3[0];
15 long : 0;
16 float y;
17 unsigned : 0;
18 char empty4[0];
19 };
20
21 extern void callee (struct test);
22
23 void
24 caller (void)
25 {
26 struct test test;
27 test.x = 114;
28 test.y = 514;
29 callee (test);
30 }