diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/sso/q7.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/sso/q7.c | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/sso/q7.c b/gcc/testsuite/gcc.dg/sso/q7.c new file mode 100644 index 00000000000..c088f05a0c7 --- /dev/null +++ b/gcc/testsuite/gcc.dg/sso/q7.c @@ -0,0 +1,46 @@ +/* { dg-do run } */ + +#include <stdio.h> + +#include "init7.h" +#include "dump.h" + +#ifdef __cplusplus +extern "C" +#endif +void abort (void); + +int main (void) +{ + struct R1 A1 = My_R1; + struct R1 B1 = My_R1; + + struct R2 A2 = My_R2; + struct R2 B2 = My_R2; + + put ("A1 :"); + dump (&A1, sizeof (struct R1)); + new_line (); + /* { dg-output "A1 : 78 56 34 12 12 00 ab 00 34 00 cd 00 56 00 ef 00\n" } */ + + put ("B1 :"); + dump (&B1, sizeof (struct R1)); + new_line (); + /* { dg-output "B1 : 78 56 34 12 12 00 ab 00 34 00 cd 00 56 00 ef 00\n" } */ + + put ("A2 :"); + dump (&A2, sizeof (struct R2)); + new_line (); + /* { dg-output "A2 : 12 34 56 78 00 ab 00 12 00 cd 00 34 00 ef 00 56\n" } */ + + put ("B2 :"); + dump (&B2, sizeof (struct R2)); + new_line (); + /* { dg-output "B2 : 12 34 56 78 00 ab 00 12 00 cd 00 34 00 ef 00 56\n" } */ + + if (A1.I != B1.I || A1.N.C1 != B1.N.C1) abort(); + + if (A2.I != B2.I || A2.N.C1 != B2.N.C1) abort (); + + return 0; +} |