Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/tree-ssa/loop-35.c @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 1830386684a0 |
children |
line wrap: on
line source
/* { dg-do compile } */ /* { dg-options "-O2 -fdump-tree-lim2-details" } */ int x; int a[100]; struct a { int X; int Y; }; /* Word size is long long for 64-bit mingw target. */ #ifdef _WIN64 #define LONG long long #else #define LONG long #endif struct a arr[100]; void test1(int b) { unsigned i; /* And here. */ for (i = 0; i < 100; i++) { arr[b+8].X += i; arr[b+9].X += i; } } void test2(struct a *A, int b) { unsigned i; /* And here as well. */ for (i = 0; i < 100; i++) { A[b].X += i; A[b+1].Y += i; } } void test3(unsigned LONG b) { unsigned i; /* And here. */ for (i = 0; i < 100; i++) { arr[b+8].X += i; arr[b+9].X += i; } } void test4(struct a *A, unsigned LONG b) { unsigned i; /* And here as well. */ for (i = 0; i < 100; i++) { A[b].X += i; A[b+1].Y += i; } } /* long index not hoisted for avr target PR 36561 */ /* { dg-final { scan-tree-dump-times "Executing store motion of" 8 "lim2" { xfail { avr-*-* msp430-*-* } } } } */ /* { dg-final { scan-tree-dump-times "Executing store motion of" 6 "lim2" { target { avr-*-* msp430-*-* } } } } */