re PR libgomp/43569 (libgomp: Conditional jump or move depends on uninitialised value)
PR libgomp/43569 * sections.c (gomp_sections_init): Initialize ws->mode. From-SVN: r158564
This commit is contained in:
parent
a837268b2b
commit
5221d7a91b
2 changed files with 23 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
|||
2010-04-20 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR libgomp/43569
|
||||
* sections.c (gomp_sections_init): Initialize ws->mode.
|
||||
|
||||
2010-04-14 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
* acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (C) 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||
Contributed by Richard Henderson <rth@redhat.com>.
|
||||
|
||||
This file is part of the GNU OpenMP Library (libgomp).
|
||||
|
@ -34,9 +34,25 @@ gomp_sections_init (struct gomp_work_share *ws, unsigned count)
|
|||
{
|
||||
ws->sched = GFS_DYNAMIC;
|
||||
ws->chunk_size = 1;
|
||||
ws->end = count + 1;
|
||||
ws->end = count + 1L;
|
||||
ws->incr = 1;
|
||||
ws->next = 1;
|
||||
#ifdef HAVE_SYNC_BUILTINS
|
||||
/* Prepare things to make each iteration faster. */
|
||||
if (sizeof (long) > sizeof (unsigned))
|
||||
ws->mode = 1;
|
||||
else
|
||||
{
|
||||
struct gomp_thread *thr = gomp_thread ();
|
||||
struct gomp_team *team = thr->ts.team;
|
||||
long nthreads = team ? team->nthreads : 1;
|
||||
|
||||
ws->mode = ((nthreads | ws->end)
|
||||
< 1UL << (sizeof (long) * __CHAR_BIT__ / 2 - 1));
|
||||
}
|
||||
#else
|
||||
ws->mode = 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
/* This routine is called when first encountering a sections construct
|
||||
|
|
Loading…
Add table
Reference in a new issue