diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2011-08-06 14:50:05 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2011-08-06 07:50:05 -0700 |
commit | 8f2b8cdefe723ec391bdcd8ce4e1931bd71418b6 (patch) | |
tree | ad27e76f44aa0719461204554210e68193b8c6ab | |
parent | 7ac1b8a01eb777ddc4e7985a7b68523a6fb5d824 (diff) | |
download | gcc-8f2b8cdefe723ec391bdcd8ce4e1931bd71418b6.zip gcc-8f2b8cdefe723ec391bdcd8ce4e1931bd71418b6.tar.gz gcc-8f2b8cdefe723ec391bdcd8ce4e1931bd71418b6.tar.bz2 |
Add testcases for PRs 47727/47372/47715.
2011-08-06 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/47727
* gcc.dg/pr47727.c: New.
PR target/47372
* gcc.dg/pr47372-1.c: New.
* gcc.dg/pr47372-2.c: Likewise.
PR target/47715
* gcc.dg/tls/pr47715-5.c: New.
From-SVN: r177513
-rw-r--r-- | gcc/testsuite/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr47372-1.c | 12 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr47372-2.c | 17 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr47727.c | 12 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tls/pr47715-5.c | 11 |
5 files changed, 62 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ecdd2d2..94f6f08 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,14 @@ 2011-08-06 H.J. Lu <hongjiu.lu@intel.com> + PR middle-end/47727 + * gcc.dg/pr47727.c: New. + + PR target/47372 + * gcc.dg/pr47372-1.c: New. + * gcc.dg/pr47372-2.c: Likewise. + +2011-08-06 H.J. Lu <hongjiu.lu@intel.com> + PR middle-end/47449 * gcc.target/i386/pr47449.c: New. @@ -17,6 +26,7 @@ * gcc.dg/tls/pr47715-2.c: Likewise. * gcc.dg/tls/pr47715-3.c: Likewise. * gcc.dg/tls/pr47715-4.c: Likewise. + * gcc.dg/tls/pr47715-5.c: Likewise. 2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com> diff --git a/gcc/testsuite/gcc.dg/pr47372-1.c b/gcc/testsuite/gcc.dg/pr47372-1.c new file mode 100644 index 0000000..a2e5c5b --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr47372-1.c @@ -0,0 +1,12 @@ +/* { dg-do compile } */ +/* { dg-require-effective-target fpic } */ +/* { dg-options "-O2 -fPIC -g" } */ + +typedef struct FILE FILE; +int _fwalk(int (*)(FILE *)); +int __sflush(FILE *); +int +fflush(FILE *fp) +{ + return (_fwalk(__sflush)); +} diff --git a/gcc/testsuite/gcc.dg/pr47372-2.c b/gcc/testsuite/gcc.dg/pr47372-2.c new file mode 100644 index 0000000..8addcdc --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr47372-2.c @@ -0,0 +1,17 @@ +/* { dg-do compile } */ +/* { dg-require-effective-target fpic } */ +/* { dg-options "-O2 -fPIC -g" } */ + +typedef unsigned short ush; +typedef ush Pos; +extern ush prev[]; +void fill_window( unsigned more, unsigned m) +{ + unsigned n; + for (n = 0; n < (unsigned)(1<<15); n++) { + (prev+0x8000)[n] = (Pos)(m >= 0x8000 ? m-0x8000 : 0); + } + for (n = 0; n < 0x8000; n++) { + prev[n] = (Pos)(m >= 0x8000 ? m-0x8000 : 0); + } +} diff --git a/gcc/testsuite/gcc.dg/pr47727.c b/gcc/testsuite/gcc.dg/pr47727.c new file mode 100644 index 0000000..1ce7c36 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr47727.c @@ -0,0 +1,12 @@ +/* { dg-do compile } */ +/* { dg-options "-O2" } */ + +typedef void (*func_ptr) (void); +static func_ptr __CTOR_END__[1] = { (func_ptr) 0 }; +static void __attribute__((used)) +__do_global_ctors_aux (void) +{ + func_ptr *p; + for (p = __CTOR_END__ - 1; *p != (func_ptr) -1; p--) + (*p) (); +} diff --git a/gcc/testsuite/gcc.dg/tls/pr47715-5.c b/gcc/testsuite/gcc.dg/tls/pr47715-5.c new file mode 100644 index 0000000..ca3410d --- /dev/null +++ b/gcc/testsuite/gcc.dg/tls/pr47715-5.c @@ -0,0 +1,11 @@ +/* { dg-do compile } */ +/* { dg-options "-O2" } */ +/* { dg-require-effective-target tls } */ + +extern __thread int __libc_errno __attribute__ ((tls_model ("initial-exec"))); +; +int * +__errno_location (void) +{ + return &__libc_errno; +} |