diff options
author | Mark Mitchell <mark@codesourcery.com> | 2009-01-14 17:54:07 +0000 |
---|---|---|
committer | Nathan Froyd <froydnj@gcc.gnu.org> | 2009-01-14 17:54:07 +0000 |
commit | 4e2199ab6834ed326b7a479e5381baed0255c72b (patch) | |
tree | a0df01ed0152c1baa793d547f4b70450e0fbb2f6 /gcc | |
parent | 5321dace269bedb0c7fc9ce3d18afa2257cf6099 (diff) | |
download | gcc-4e2199ab6834ed326b7a479e5381baed0255c72b.zip gcc-4e2199ab6834ed326b7a479e5381baed0255c72b.tar.gz gcc-4e2199ab6834ed326b7a479e5381baed0255c72b.tar.bz2 |
vect-105.c: Prevent compiler from hoisting abort out of loop.
* gcc.dg/vect/vect-105.c: Prevent compiler from hoisting abort
out of loop.
From-SVN: r143378
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/vect/vect-105.c | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8432ec6..57e8d9c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2009-01-14 Mark Mitchell <mark@codesourcery.com> + + * gcc.dg/vect/vect-105.c: Prevent compiler from hoisting abort + out of loop. + 2009-01-14 Richard Guenther <rguenther@suse.de> PR tree-optimization/38826 diff --git a/gcc/testsuite/gcc.dg/vect/vect-105.c b/gcc/testsuite/gcc.dg/vect/vect-105.c index eb21b16..bbf42af 100644 --- a/gcc/testsuite/gcc.dg/vect/vect-105.c +++ b/gcc/testsuite/gcc.dg/vect/vect-105.c @@ -16,6 +16,8 @@ static int a[N][N] = {{1,2,3,11},{4,5,6,12},{7,8,9,13},{34,45,67,83}}; static int b[N][N] = {{17,28,15,23},{0,2,3,24},{4,31,82,25},{29,31,432,256}}; static int c[N][N] = {{1,2,3,11},{4,9,13,34},{45,67,83,13},{34,45,67,83}}; +volatile int y; + __attribute__ ((noinline)) int main1 (int x) { int i,j; @@ -28,7 +30,9 @@ int main1 (int x) { { p->a[i][j] = a[i][j]; p->b[i][j] = b[i][j]; - if (x == 135) + /* Because Y is volatile, the compiler cannot move this check out + of the loop. */ + if (y) abort (); /* to avoid vectorization */ } } |