blob: 0f83088bff9f03b95898005203c5792171107184 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
/* 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 ();
}
|