OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [gcc.dg/] [compat/] [struct-by-value-3_x.c] - Diff between revs 298 and 338

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

Rev 298 Rev 338
#include "compat-common.h"
#include "compat-common.h"
 
 
#define T(TYPE)                                                 \
#define T(TYPE)                                                 \
TYPE g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE;                \
TYPE g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE;                \
TYPE g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE;                \
TYPE g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE;                \
TYPE g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE;             \
TYPE g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE;             \
TYPE g13s##TYPE, g14s##TYPE, g15s##TYPE, g16s##TYPE;            \
TYPE g13s##TYPE, g14s##TYPE, g15s##TYPE, g16s##TYPE;            \
                                                                \
                                                                \
extern void init##TYPE (TYPE *p, int i);                        \
extern void init##TYPE (TYPE *p, int i);                        \
extern void checkg##TYPE (void);                                \
extern void checkg##TYPE (void);                                \
extern void                                                     \
extern void                                                     \
test##TYPE (TYPE s1, TYPE s2, TYPE s3, TYPE s4,                 \
test##TYPE (TYPE s1, TYPE s2, TYPE s3, TYPE s4,                 \
            TYPE s5, TYPE s6, TYPE s7, TYPE s8,                 \
            TYPE s5, TYPE s6, TYPE s7, TYPE s8,                 \
            TYPE s9, TYPE s10, TYPE s11, TYPE s12,              \
            TYPE s9, TYPE s10, TYPE s11, TYPE s12,              \
            TYPE s13, TYPE s14, TYPE s15, TYPE s16);            \
            TYPE s13, TYPE s14, TYPE s15, TYPE s16);            \
extern void testva##TYPE (int n, ...);                          \
extern void testva##TYPE (int n, ...);                          \
                                                                \
                                                                \
void                                                            \
void                                                            \
test2_##TYPE (TYPE s1, TYPE s2, TYPE s3, TYPE s4,               \
test2_##TYPE (TYPE s1, TYPE s2, TYPE s3, TYPE s4,               \
              TYPE s5, TYPE s6, TYPE s7, TYPE s8)               \
              TYPE s5, TYPE s6, TYPE s7, TYPE s8)               \
{                                                               \
{                                                               \
  test##TYPE (s1, g2s##TYPE, s2, g4s##TYPE,                     \
  test##TYPE (s1, g2s##TYPE, s2, g4s##TYPE,                     \
              s3, g6s##TYPE, s4, g8s##TYPE,                     \
              s3, g6s##TYPE, s4, g8s##TYPE,                     \
              s5, g10s##TYPE, s6, g12s##TYPE,                   \
              s5, g10s##TYPE, s6, g12s##TYPE,                   \
              s7, g14s##TYPE, s8, g16s##TYPE);                  \
              s7, g14s##TYPE, s8, g16s##TYPE);                  \
}                                                               \
}                                                               \
                                                                \
                                                                \
void                                                            \
void                                                            \
testit##TYPE (void)                                             \
testit##TYPE (void)                                             \
{                                                               \
{                                                               \
  DEBUG_FPUTS (#TYPE);                                          \
  DEBUG_FPUTS (#TYPE);                                          \
  DEBUG_FPUTS (" init: ");                                      \
  DEBUG_FPUTS (" init: ");                                      \
  init##TYPE  ( &g1s##TYPE,  1);                                \
  init##TYPE  ( &g1s##TYPE,  1);                                \
  init##TYPE  ( &g2s##TYPE,  2);                                \
  init##TYPE  ( &g2s##TYPE,  2);                                \
  init##TYPE  ( &g3s##TYPE,  3);                                \
  init##TYPE  ( &g3s##TYPE,  3);                                \
  init##TYPE  ( &g4s##TYPE,  4);                                \
  init##TYPE  ( &g4s##TYPE,  4);                                \
  init##TYPE  ( &g5s##TYPE,  5);                                \
  init##TYPE  ( &g5s##TYPE,  5);                                \
  init##TYPE  ( &g6s##TYPE,  6);                                \
  init##TYPE  ( &g6s##TYPE,  6);                                \
  init##TYPE  ( &g7s##TYPE,  7);                                \
  init##TYPE  ( &g7s##TYPE,  7);                                \
  init##TYPE  ( &g8s##TYPE,  8);                                \
  init##TYPE  ( &g8s##TYPE,  8);                                \
  init##TYPE  ( &g9s##TYPE,  9);                                \
  init##TYPE  ( &g9s##TYPE,  9);                                \
  init##TYPE  (&g10s##TYPE, 10);                                \
  init##TYPE  (&g10s##TYPE, 10);                                \
  init##TYPE  (&g11s##TYPE, 11);                                \
  init##TYPE  (&g11s##TYPE, 11);                                \
  init##TYPE  (&g12s##TYPE, 12);                                \
  init##TYPE  (&g12s##TYPE, 12);                                \
  init##TYPE  (&g13s##TYPE, 13);                                \
  init##TYPE  (&g13s##TYPE, 13);                                \
  init##TYPE  (&g14s##TYPE, 14);                                \
  init##TYPE  (&g14s##TYPE, 14);                                \
  init##TYPE  (&g15s##TYPE, 15);                                \
  init##TYPE  (&g15s##TYPE, 15);                                \
  init##TYPE  (&g16s##TYPE, 16);                                \
  init##TYPE  (&g16s##TYPE, 16);                                \
  checkg##TYPE ();                                              \
  checkg##TYPE ();                                              \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  DEBUG_FPUTS (#TYPE);                                          \
  DEBUG_FPUTS (#TYPE);                                          \
  DEBUG_FPUTS (" test: ");                                      \
  DEBUG_FPUTS (" test: ");                                      \
  test##TYPE (g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,       \
  test##TYPE (g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,       \
              g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,       \
              g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,       \
              g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,    \
              g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,    \
              g13s##TYPE, g14s##TYPE, g15s##TYPE, g16s##TYPE);  \
              g13s##TYPE, g14s##TYPE, g15s##TYPE, g16s##TYPE);  \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  DEBUG_FPUTS (#TYPE);                                          \
  DEBUG_FPUTS (#TYPE);                                          \
  DEBUG_FPUTS (" testva:");                                     \
  DEBUG_FPUTS (" testva:");                                     \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (1,                                              \
  testva##TYPE (1,                                              \
                g1s##TYPE);                                     \
                g1s##TYPE);                                     \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (2,                                              \
  testva##TYPE (2,                                              \
                g1s##TYPE, g2s##TYPE);                          \
                g1s##TYPE, g2s##TYPE);                          \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (3,                                              \
  testva##TYPE (3,                                              \
                g1s##TYPE, g2s##TYPE, g3s##TYPE);               \
                g1s##TYPE, g2s##TYPE, g3s##TYPE);               \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (4,                                              \
  testva##TYPE (4,                                              \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE);    \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE);    \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (5,                                              \
  testva##TYPE (5,                                              \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE);                                     \
                g5s##TYPE);                                     \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (6,                                              \
  testva##TYPE (6,                                              \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE);                          \
                g5s##TYPE, g6s##TYPE);                          \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (7,                                              \
  testva##TYPE (7,                                              \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE);               \
                g5s##TYPE, g6s##TYPE, g7s##TYPE);               \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (8,                                              \
  testva##TYPE (8,                                              \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE);    \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE);    \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (9,                                              \
  testva##TYPE (9,                                              \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g9s##TYPE);                                     \
                g9s##TYPE);                                     \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (10,                                             \
  testva##TYPE (10,                                             \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g9s##TYPE, g10s##TYPE);                         \
                g9s##TYPE, g10s##TYPE);                         \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (11,                                             \
  testva##TYPE (11,                                             \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g9s##TYPE, g10s##TYPE, g11s##TYPE);             \
                g9s##TYPE, g10s##TYPE, g11s##TYPE);             \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (12,                                             \
  testva##TYPE (12,                                             \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE); \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE); \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (13,                                             \
  testva##TYPE (13,                                             \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,  \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,  \
                g13s##TYPE);                                    \
                g13s##TYPE);                                    \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (14,                                             \
  testva##TYPE (14,                                             \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,  \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,  \
                g13s##TYPE, g14s##TYPE);                        \
                g13s##TYPE, g14s##TYPE);                        \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (15,                                             \
  testva##TYPE (15,                                             \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,  \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,  \
                g13s##TYPE, g14s##TYPE, g15s##TYPE);            \
                g13s##TYPE, g14s##TYPE, g15s##TYPE);            \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  testva##TYPE (16,                                             \
  testva##TYPE (16,                                             \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE,     \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,  \
                g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE,  \
                g13s##TYPE, g14s##TYPE, g15s##TYPE, g16s##TYPE); \
                g13s##TYPE, g14s##TYPE, g15s##TYPE, g16s##TYPE); \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
  DEBUG_FPUTS (#TYPE);                                          \
  DEBUG_FPUTS (#TYPE);                                          \
  DEBUG_FPUTS (" test2:");                                      \
  DEBUG_FPUTS (" test2:");                                      \
  test2_##TYPE (g1s##TYPE, g3s##TYPE, g5s##TYPE, g7s##TYPE,     \
  test2_##TYPE (g1s##TYPE, g3s##TYPE, g5s##TYPE, g7s##TYPE,     \
                g9s##TYPE, g11s##TYPE, g13s##TYPE, g15s##TYPE); \
                g9s##TYPE, g11s##TYPE, g13s##TYPE, g15s##TYPE); \
  DEBUG_NL;                                                     \
  DEBUG_NL;                                                     \
}
}
 
 
#include "small-struct-defs.h"
#include "small-struct-defs.h"
#include "small-struct-check.h"
#include "small-struct-check.h"
 
 
T(Sc)
T(Sc)
T(Ss)
T(Ss)
T(Si)
T(Si)
T(Scs)
T(Scs)
T(Ssc)
T(Ssc)
T(Sic)
T(Sic)
T(Sci)
T(Sci)
T(Ssi)
T(Ssi)
T(Sis)
T(Sis)
T(Scsi)
T(Scsi)
T(Scis)
T(Scis)
T(Ssci)
T(Ssci)
T(Ssic)
T(Ssic)
T(Sisc)
T(Sisc)
T(Sics)
T(Sics)
 
 
#undef T
#undef T
 
 
void
void
struct_by_value_3_x ()
struct_by_value_3_x ()
{
{
DEBUG_INIT
DEBUG_INIT
 
 
#define T(TYPE) testit##TYPE ();
#define T(TYPE) testit##TYPE ();
 
 
T(Sc)
T(Sc)
T(Ss)
T(Ss)
T(Si)
T(Si)
T(Scs)
T(Scs)
T(Ssc)
T(Ssc)
T(Sic)
T(Sic)
T(Sci)
T(Sci)
T(Ssi)
T(Ssi)
T(Sis)
T(Sis)
T(Scsi)
T(Scsi)
T(Scis)
T(Scis)
T(Ssci)
T(Ssci)
T(Ssic)
T(Ssic)
T(Sisc)
T(Sisc)
T(Sics)
T(Sics)
 
 
DEBUG_FINI
DEBUG_FINI
 
 
if (fails != 0)
if (fails != 0)
  abort ();
  abort ();
 
 
#undef T
#undef T
}
}
 
 

powered by: WebSVN 2.1.0

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