diff options
author | Janis Johnson <janis187@us.ibm.com> | 2002-01-22 21:21:42 +0000 |
---|---|---|
committer | Janis Johnson <janis@gcc.gnu.org> | 2002-01-22 21:21:42 +0000 |
commit | 3196dfde9a1b7facc176f069afe169f08d484b65 (patch) | |
tree | ee83d8651cf9828fc24babec28ee37081b8a2f7f /gcc | |
parent | e8d52ba03e4c1ff14e81780ec8aa62d00e863a34 (diff) | |
download | gcc-3196dfde9a1b7facc176f069afe169f08d484b65.zip gcc-3196dfde9a1b7facc176f069afe169f08d484b65.tar.gz gcc-3196dfde9a1b7facc176f069afe169f08d484b65.tar.bz2 |
re PR target/5379 ([i386] internal error: Segmentation fault (prefetch related?))
PR target/5379
* gcc.dg/20020122-2.c: New test.
From-SVN: r49094
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/20020122-2.c | 41 |
2 files changed, 46 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6f5728d..17975c2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2002-01-22 Janis Johnson <janis187@us.ibm.com> + + PR target/5379 + * gcc.dg/20020122-2.c: New test. + 2002-01-22 Hans-Peter Nilsson <hp@axis.com> * gcc.dg/20020122-1.c: New test. diff --git a/gcc/testsuite/gcc.dg/20020122-2.c b/gcc/testsuite/gcc.dg/20020122-2.c new file mode 100644 index 0000000..2115a22 --- /dev/null +++ b/gcc/testsuite/gcc.dg/20020122-2.c @@ -0,0 +1,41 @@ +/* This test was supplied with PR target/5379. It caused the compiler + to get a segmentation fault. */ + +/* { dg-do compile } */ +/* { dg-options "-O2 -fprefetch-loop-arrays -w" } */ +/* { dg-options "-O2 -fprefetch-loop-arrays -march=athlon" { target i?86-*-* } } */ + +extern int access( char* ); +extern int a(); +char* foocp(); + +void +_KDE_IceGetPoValidAuthIndices (protocol_name, num_indices_ret, indices_ret) +const char *protocol_name; +int *num_indices_ret; +int *indices_ret; +{ + int auth_file; + char *filename; + int index_ret, i; + + if (!(filename = foocp ())) + return; + + if (access (filename)) + return; + + if (auth_file = access (filename)) + return; + + for (;;) + { + if (strcmp (protocol_name, protocol_name) == 0 ) + { + for (i = 0; i < *num_indices_ret; i++) + if (index_ret == indices_ret[i]) + break; + } + } +} + |