URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 298 |
Rev 384 |
/* { dg-do compile } */
|
/* { dg-do compile } */
|
/* { dg-do run } */
|
/* { dg-do run } */
|
|
|
#include <stdlib.h>
|
#include <stdlib.h>
|
|
|
typedef struct
|
typedef struct
|
{
|
{
|
int a;
|
int a;
|
float b;
|
float b;
|
}str_t1;
|
}str_t1;
|
|
|
typedef struct
|
typedef struct
|
{
|
{
|
int c;
|
int c;
|
float d;
|
float d;
|
}str_t2;
|
}str_t2;
|
|
|
#ifdef STACK_SIZE
|
#ifdef STACK_SIZE
|
#if STACK_SIZE > 16000
|
#if STACK_SIZE > 16000
|
#define N 1000
|
#define N 1000
|
#else
|
#else
|
#define N (STACK_SIZE/16)
|
#define N (STACK_SIZE/16)
|
#endif
|
#endif
|
#else
|
#else
|
#define N 1000
|
#define N 1000
|
#endif
|
#endif
|
|
|
str_t1 *p1;
|
str_t1 *p1;
|
str_t2 *p2;
|
str_t2 *p2;
|
int num;
|
int num;
|
|
|
void
|
void
|
foo (void)
|
foo (void)
|
{
|
{
|
int i;
|
int i;
|
|
|
for (i=0; i < num; i++)
|
for (i=0; i < num; i++)
|
p2[i].c = 2;
|
p2[i].c = 2;
|
}
|
}
|
|
|
int
|
int
|
main ()
|
main ()
|
{
|
{
|
int i, r;
|
int i, r;
|
|
|
r = rand ();
|
r = rand ();
|
num = r > N ? N : r;
|
num = r > N ? N : r;
|
p1 = malloc (num * sizeof (str_t1));
|
p1 = malloc (num * sizeof (str_t1));
|
p2 = malloc (num * sizeof (str_t2));
|
p2 = malloc (num * sizeof (str_t2));
|
|
|
if (p1 == NULL || p2 == NULL)
|
if (p1 == NULL || p2 == NULL)
|
return 0;
|
return 0;
|
|
|
for (i = 0; i < num; i++)
|
for (i = 0; i < num; i++)
|
p1[i].a = 1;
|
p1[i].a = 1;
|
|
|
foo ();
|
foo ();
|
|
|
for (i = 0; i < num; i++)
|
for (i = 0; i < num; i++)
|
if (p1[i].a != 1 || p2[i].c != 2)
|
if (p1[i].a != 1 || p2[i].c != 2)
|
abort ();
|
abort ();
|
|
|
return 0;
|
return 0;
|
}
|
}
|
|
|
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
/* { dg-final { scan-ipa-dump "Number of structures to transform is 2" "ipa_struct_reorg" { xfail { "avr-*-*" } } } } */
|
/* { dg-final { scan-ipa-dump "Number of structures to transform is 2" "ipa_struct_reorg" { xfail { "avr-*-*" } } } } */
|
/* { dg-final { cleanup-ipa-dump "*" } } */
|
/* { dg-final { cleanup-ipa-dump "*" } } */
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.