OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc2/] [gcc/] [testsuite/] [gcc.dg/] [compat/] [struct-align-1_y.c] - Diff between revs 298 and 384

Only display areas with differences | Details | Blame | View Log

Rev 298 Rev 384
#include "compat-common.h"
#include "compat-common.h"
#include "struct-align-1.h"
#include "struct-align-1.h"
 
 
#define TEST(NAME)                                              \
#define TEST(NAME)                                              \
extern char v1_##NAME;                                          \
extern char v1_##NAME;                                          \
extern double v2_##NAME;                                        \
extern double v2_##NAME;                                        \
extern int v3_##NAME;                                           \
extern int v3_##NAME;                                           \
                                                                \
                                                                \
extern struct B1_##NAME b1_##NAME, ab1_##NAME[2];               \
extern struct B1_##NAME b1_##NAME, ab1_##NAME[2];               \
extern struct B2_##NAME b2_##NAME, ab2_##NAME[2];               \
extern struct B2_##NAME b2_##NAME, ab2_##NAME[2];               \
extern struct B3_##NAME b3_##NAME, ab3_##NAME[2];               \
extern struct B3_##NAME b3_##NAME, ab3_##NAME[2];               \
                                                                \
                                                                \
extern void pass1_##NAME (struct B1_##NAME);                    \
extern void pass1_##NAME (struct B1_##NAME);                    \
extern void pass2_##NAME (struct B2_##NAME);                    \
extern void pass2_##NAME (struct B2_##NAME);                    \
extern void pass3_##NAME (struct B3_##NAME);                    \
extern void pass3_##NAME (struct B3_##NAME);                    \
extern struct B1_##NAME return1_##NAME (void);                  \
extern struct B1_##NAME return1_##NAME (void);                  \
extern struct B2_##NAME return2_##NAME (void);                  \
extern struct B2_##NAME return2_##NAME (void);                  \
extern struct B3_##NAME return3_##NAME (void);                  \
extern struct B3_##NAME return3_##NAME (void);                  \
                                                                \
                                                                \
void                                                            \
void                                                            \
checkp1_##NAME (struct B1_##NAME *p)                            \
checkp1_##NAME (struct B1_##NAME *p)                            \
{                                                               \
{                                                               \
  if (p->c != v1_##NAME)                                        \
  if (p->c != v1_##NAME)                                        \
    DEBUG_CHECK;                                                \
    DEBUG_CHECK;                                                \
  if (p->d != v2_##NAME)                                        \
  if (p->d != v2_##NAME)                                        \
    DEBUG_CHECK;                                                \
    DEBUG_CHECK;                                                \
}                                                               \
}                                                               \
                                                                \
                                                                \
void                                                            \
void                                                            \
checkp2_##NAME (struct B2_##NAME *p)                            \
checkp2_##NAME (struct B2_##NAME *p)                            \
{                                                               \
{                                                               \
  if (p->c != v1_##NAME)                                        \
  if (p->c != v1_##NAME)                                        \
    DEBUG_CHECK;                                                \
    DEBUG_CHECK;                                                \
  if (p->a2.d != v2_##NAME)                                     \
  if (p->a2.d != v2_##NAME)                                     \
    DEBUG_CHECK;                                                \
    DEBUG_CHECK;                                                \
}                                                               \
}                                                               \
                                                                \
                                                                \
void                                                            \
void                                                            \
checkp3_##NAME (struct B3_##NAME *p)                            \
checkp3_##NAME (struct B3_##NAME *p)                            \
{                                                               \
{                                                               \
  if (p->c != v1_##NAME)                                        \
  if (p->c != v1_##NAME)                                        \
    DEBUG_CHECK;                                                \
    DEBUG_CHECK;                                                \
  if (p->a3.d != v2_##NAME)                                     \
  if (p->a3.d != v2_##NAME)                                     \
    DEBUG_CHECK;                                                \
    DEBUG_CHECK;                                                \
  if (p->a3.i != v3_##NAME)                                     \
  if (p->a3.i != v3_##NAME)                                     \
    DEBUG_CHECK;                                                \
    DEBUG_CHECK;                                                \
}                                                               \
}                                                               \
                                                                \
                                                                \
void                                                            \
void                                                            \
test_##NAME (void)                                              \
test_##NAME (void)                                              \
{                                                               \
{                                                               \
  struct B1_##NAME s1;                                          \
  struct B1_##NAME s1;                                          \
  struct B2_##NAME s2;                                          \
  struct B2_##NAME s2;                                          \
  struct B3_##NAME s3;                                          \
  struct B3_##NAME s3;                                          \
  DEBUG_FPUTS (DESC_##NAME);                                    \
  DEBUG_FPUTS (DESC_##NAME);                                    \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  DEBUG_FPUTS ("  global variable");                            \
  DEBUG_FPUTS ("  global variable");                            \
  checkp1_##NAME (&b1_##NAME);                                  \
  checkp1_##NAME (&b1_##NAME);                                  \
  checkp2_##NAME (&b2_##NAME);                                  \
  checkp2_##NAME (&b2_##NAME);                                  \
  checkp3_##NAME (&b3_##NAME);                                  \
  checkp3_##NAME (&b3_##NAME);                                  \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  DEBUG_FPUTS ("  global array");                               \
  DEBUG_FPUTS ("  global array");                               \
  checkp1_##NAME (&ab1_##NAME[1]);                              \
  checkp1_##NAME (&ab1_##NAME[1]);                              \
  checkp2_##NAME (&ab2_##NAME[1]);                              \
  checkp2_##NAME (&ab2_##NAME[1]);                              \
  checkp3_##NAME (&ab3_##NAME[1]);                              \
  checkp3_##NAME (&ab3_##NAME[1]);                              \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  DEBUG_FPUTS ("  argument");                                   \
  DEBUG_FPUTS ("  argument");                                   \
  pass1_##NAME (b1_##NAME);                                     \
  pass1_##NAME (b1_##NAME);                                     \
  pass2_##NAME (b2_##NAME);                                     \
  pass2_##NAME (b2_##NAME);                                     \
  pass3_##NAME (b3_##NAME);                                     \
  pass3_##NAME (b3_##NAME);                                     \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  DEBUG_FPUTS ("  function result");                            \
  DEBUG_FPUTS ("  function result");                            \
  s1 = return1_##NAME ();                                       \
  s1 = return1_##NAME ();                                       \
  checkp1_##NAME (&s1);                                         \
  checkp1_##NAME (&s1);                                         \
  s2 = return2_##NAME ();                                       \
  s2 = return2_##NAME ();                                       \
  checkp2_##NAME (&s2);                                         \
  checkp2_##NAME (&s2);                                         \
  s3 = return3_##NAME ();                                       \
  s3 = return3_##NAME ();                                       \
  checkp3_##NAME (&s3);                                         \
  checkp3_##NAME (&s3);                                         \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
}
}
 
 
TEST (orig)
TEST (orig)
#ifndef SKIP_ATTRIBUTE
#ifndef SKIP_ATTRIBUTE
TEST (p_all)
TEST (p_all)
TEST (p_inner)
TEST (p_inner)
TEST (p_outer)
TEST (p_outer)
TEST (a_max)
TEST (a_max)
TEST (m_outer_p_inner)
TEST (m_outer_p_inner)
TEST (m_inner_p_outer)
TEST (m_inner_p_outer)
#endif
#endif
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.