1 /* This testcase failed on mmix-knuth-mmixware.  Problem was with storing
2    to an unaligned mem:SC, gcc tried doing it by parts from a (concat:SC
3    (reg:SF 293) (reg:SF 294)).  */
4 
5 typedef __complex__ float cf;
6 struct x { char c; cf f; } __attribute__ ((__packed__));
7 extern void f2 (struct x*);
8 extern void f1 (void);
9 int
main(void)10 main (void)
11 {
12   f1 ();
13   exit (0);
14 }
15 
16 void
f1(void)17 f1 (void)
18 {
19   struct x s;
20   s.f = 1;
21   s.c = 42;
22   f2 (&s);
23 }
24 
25 void
f2(struct x * y)26 f2 (struct x *y)
27 {
28   if (y->f != 1 || y->c != 42)
29     abort ();
30 }
31