Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.c-torture/execute/pr48571-1.c @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
#define S (sizeof (int)) unsigned int c[624]; void __attribute__((noinline)) bar (void) { unsigned int i; /* Obfuscated c[i] = c[i-1] * 2. */ for (i = 1; i < 624; ++i) *(unsigned int *)((void *)c + (__SIZE_TYPE__)i * S) = 2 * *(unsigned int *)((void *)c + ((__SIZE_TYPE__)i + ((__SIZE_TYPE__)-S)/S) * S); } extern void abort (void); int main() { unsigned int i, j; for (i = 0; i < 624; ++i) c[i] = 1; bar(); j = 1; for (i = 0; i < 624; ++i) { if (c[i] != j) abort (); j = j * 2; } return 0; }