/* This testcase is from PR43012.
|
/* This testcase is from PR43012.
|
You will need CLooG-PPL 0.15.8 or later to have this testcase fixed. */
|
You will need CLooG-PPL 0.15.8 or later to have this testcase fixed. */
|
|
|
/* { dg-do run } */
|
/* { dg-do run } */
|
/* { dg-options "-O2 -floop-strip-mine" } */
|
/* { dg-options "-O2 -floop-strip-mine" } */
|
|
|
extern void abort (void);
|
extern void abort (void);
|
|
|
#ifdef DBG
|
#ifdef DBG
|
extern int printf (const char *, ...);
|
extern int printf (const char *, ...);
|
#endif
|
#endif
|
|
|
#define LAST_TOKEN 534
|
#define LAST_TOKEN 534
|
#define FLOAT_FUNCT_TOKEN 64
|
#define FLOAT_FUNCT_TOKEN 64
|
#define VECTOR_FUNCT_TOKEN 77
|
#define VECTOR_FUNCT_TOKEN 77
|
#define COLOUR_KEY_TOKEN 89
|
#define COLOUR_KEY_TOKEN 89
|
|
|
int Table[LAST_TOKEN];
|
int Table[LAST_TOKEN];
|
|
|
void
|
void
|
pre_init_tokenizer ()
|
pre_init_tokenizer ()
|
{
|
{
|
int i;
|
int i;
|
|
|
for (i = 0; i < LAST_TOKEN; i++)
|
for (i = 0; i < LAST_TOKEN; i++)
|
{
|
{
|
Table[i] = i;
|
Table[i] = i;
|
if (i < FLOAT_FUNCT_TOKEN)
|
if (i < FLOAT_FUNCT_TOKEN)
|
Table[i] = FLOAT_FUNCT_TOKEN;
|
Table[i] = FLOAT_FUNCT_TOKEN;
|
else
|
else
|
{
|
{
|
if (i < VECTOR_FUNCT_TOKEN)
|
if (i < VECTOR_FUNCT_TOKEN)
|
Table[i] = VECTOR_FUNCT_TOKEN;
|
Table[i] = VECTOR_FUNCT_TOKEN;
|
else
|
else
|
{
|
{
|
if (i < COLOUR_KEY_TOKEN)
|
if (i < COLOUR_KEY_TOKEN)
|
Table[i] = COLOUR_KEY_TOKEN;
|
Table[i] = COLOUR_KEY_TOKEN;
|
}
|
}
|
}
|
}
|
}
|
}
|
}
|
}
|
|
|
void
|
void
|
check ()
|
check ()
|
{
|
{
|
int i;
|
int i;
|
|
|
for (i = 0; i < FLOAT_FUNCT_TOKEN; i++)
|
for (i = 0; i < FLOAT_FUNCT_TOKEN; i++)
|
if (Table[i] != FLOAT_FUNCT_TOKEN)
|
if (Table[i] != FLOAT_FUNCT_TOKEN)
|
abort ();
|
abort ();
|
for (i = FLOAT_FUNCT_TOKEN; i < VECTOR_FUNCT_TOKEN; i++)
|
for (i = FLOAT_FUNCT_TOKEN; i < VECTOR_FUNCT_TOKEN; i++)
|
if (Table[i] != VECTOR_FUNCT_TOKEN)
|
if (Table[i] != VECTOR_FUNCT_TOKEN)
|
abort ();
|
abort ();
|
for (i = VECTOR_FUNCT_TOKEN; i < COLOUR_KEY_TOKEN; i++)
|
for (i = VECTOR_FUNCT_TOKEN; i < COLOUR_KEY_TOKEN; i++)
|
if (Table[i] != COLOUR_KEY_TOKEN)
|
if (Table[i] != COLOUR_KEY_TOKEN)
|
abort ();
|
abort ();
|
for (i = COLOUR_KEY_TOKEN; i < LAST_TOKEN; i++)
|
for (i = COLOUR_KEY_TOKEN; i < LAST_TOKEN; i++)
|
if (Table[i] != i)
|
if (Table[i] != i)
|
abort ();
|
abort ();
|
}
|
}
|
|
|
int
|
int
|
main ()
|
main ()
|
{
|
{
|
int i;
|
int i;
|
|
|
pre_init_tokenizer ();
|
pre_init_tokenizer ();
|
#ifdef DBG
|
#ifdef DBG
|
for (i = 0; i < LAST_TOKEN; i++)
|
for (i = 0; i < LAST_TOKEN; i++)
|
printf ("%3d: %d\n", i, Table[i]);
|
printf ("%3d: %d\n", i, Table[i]);
|
#endif
|
#endif
|
check ();
|
check ();
|
return 0;
|
return 0;
|
}
|
}
|
|
|