* gcc.c-torture/execute/struct-cpy-1.c: New test.
From-SVN: r57126
This commit is contained in:
parent
61e6e65a6a
commit
62dfe763cb
@ -1,3 +1,7 @@
|
||||
2002-09-14 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* gcc.c-torture/execute/struct-cpy-1.c: New test.
|
||||
|
||||
2002-09-13 Nathan Sidwell <nathan@codesourcery.com>
|
||||
|
||||
* g++.dg/template/deduce1.C: New test.
|
||||
|
43
gcc/testsuite/gcc.c-torture/execute/struct-cpy-1.c
Normal file
43
gcc/testsuite/gcc.c-torture/execute/struct-cpy-1.c
Normal file
@ -0,0 +1,43 @@
|
||||
/* powerpc64-linux gcc miscompiled this due to rs6000.c:expand_block_move
|
||||
not setting mem aliasing info correctly for the code implementing the
|
||||
structure assignment. */
|
||||
|
||||
struct termios
|
||||
{
|
||||
unsigned int a;
|
||||
unsigned int b;
|
||||
unsigned int c;
|
||||
unsigned int d;
|
||||
unsigned char pad[28];
|
||||
};
|
||||
|
||||
struct tty_driver
|
||||
{
|
||||
unsigned char pad1[38];
|
||||
struct termios t __attribute__ ((aligned (8)));
|
||||
};
|
||||
|
||||
static struct termios zero_t;
|
||||
static struct tty_driver pty;
|
||||
|
||||
void ini (void)
|
||||
{
|
||||
pty.t = zero_t;
|
||||
pty.t.a = 1;
|
||||
pty.t.b = 2;
|
||||
pty.t.c = 3;
|
||||
pty.t.d = 4;
|
||||
}
|
||||
|
||||
int main (void)
|
||||
{
|
||||
extern void abort (void);
|
||||
|
||||
ini ();
|
||||
if (pty.t.a != 1
|
||||
|| pty.t.b != 2
|
||||
|| pty.t.c != 3
|
||||
|| pty.t.d != 4)
|
||||
abort ();
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user