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