From af9059026e06dba389703e250292ca5a965ade17 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" <hongjiu.lu@intel.com> Date: Wed, 9 May 2012 13:32:13 +0000 Subject: [PATCH] Add a test for PR middle-end/53249 PR middle-end/53249 * gcc.target/i386/pr53249.c: New. From-SVN: r187331 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.target/i386/pr53249.c | 25 +++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 gcc/testsuite/gcc.target/i386/pr53249.c diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 00999072e345..06c1f9d852af 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2012-05-09 H.J. Lu <hongjiu.lu@intel.com> + + PR middle-end/53249 + * gcc.target/i386/pr53249.c: New. + 2012-05-09 Richard Guenther <rguenther@suse.de> PR tree-optimization/18437 diff --git a/gcc/testsuite/gcc.target/i386/pr53249.c b/gcc/testsuite/gcc.target/i386/pr53249.c new file mode 100644 index 000000000000..9eab8bc135be --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr53249.c @@ -0,0 +1,25 @@ +/* { dg-do compile { target { ! { ia32 } } } } */ +/* { dg-options "-O2 -mx32 -ftls-model=initial-exec -maddress-mode=short" } */ + +struct gomp_task +{ + struct gomp_task *parent; +}; + +struct gomp_thread +{ + int foo1; + struct gomp_task *task; +}; + +extern __thread struct gomp_thread gomp_tls_data; + +void +__attribute__ ((noinline)) +gomp_end_task (void) +{ + struct gomp_thread *thr = &gomp_tls_data; + struct gomp_task *task = thr->task; + + thr->task = task->parent; +} -- GitLab