| /* This testcase failed on mmix-knuth-mmixware. Problem was with storing | |
| to an unaligned mem:SC, gcc tried doing it by parts from a (concat:SC | |
| (reg:SF 293) (reg:SF 294)). */ | |
| typedef __complex__ float cf; | |
| struct x { char c; cf f; } __attribute__ ((__packed__)); | |
| extern void f2 (struct x*); | |
| extern void f1 (void); | |
| int | |
| main (void) | |
| { | |
| f1 (); | |
| exit (0); | |
| } | |
| void | |
| f1 (void) | |
| { | |
| struct x s; | |
| s.f = 1; | |
| s.c = 42; | |
| f2 (&s); | |
| } | |
| void | |
| f2 (struct x *y) | |
| { | |
| if (y->f != 1 || y->c != 42) | |
| abort (); | |
| } |