]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgomp/ChangeLog
re PR debug/49496 (-fcompare-debug failure (length) with -O -ftree-vectorize)
[thirdparty/gcc.git] / libgomp / ChangeLog
CommitLineData
4577f730
JJ
12011-05-19 Jakub Jelinek <jakub@redhat.com>
2
ea93a47b
JJ
3 PR c++/49043
4 * testsuite/libgomp.c++/pr49043.C: New test.
5
4577f730
JJ
6 PR c++/48869
7 * testsuite/libgomp.c++/pr48869.C: New test.
8
e7385332
JJ
92011-05-06 Jakub Jelinek <jakub@redhat.com>
10
11 PR fortran/48894
12 * fortran.c: Include limits.h.
13 (TO_INT): Define.
14 (omp_set_dynamic_8_, omp_set_num_threads_8_): Use !!*set instead of
15 *set.
16 (omp_set_num_threads_8_, omp_set_schedule_8_,
17 omp_set_max_active_levels_8_, omp_get_ancestor_thread_num_8_,
18 omp_get_team_size_8_): Use TO_INT macro.
19 * testsuite/libgomp.fortran/pr48894.f90: New test.
20
20790697
JJ
212011-04-13 Jakub Jelinek <jakub@redhat.com>
22
23 PR middle-end/48591
24 * testsuite/libgomp.c/pr48591.c: New test.
25
bf382f5f
RO
262011-03-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
27
28 PR bootstrap/48135
29 * acinclude.m4 (enable_symvers): Handle --disable-symvers.
30 * configure: Regenerate.
31
113a53c1
JJ
322011-02-27 Jakub Jelinek <jakub@redhat.com>
33
34 PR fortran/47886
35 * testsuite/libgomp.fortran/task3.f90: New test.
36
0024f1af
TB
372011-02-24 Tobias Burnus <burnus@net-b.de>
38
39 * libgomp.texi (GOMP_STACKSIZE): Fix @ref to OMP_STACKSIZE.
40
21e1e594
JJ
412011-02-23 Jakub Jelinek <jakub@redhat.com>
42
43 PR libgomp/47854
44 * libgomp.texi (omp_get_wtime): Don't say time in the past
45 must be Unix Epoch.
46
67962076
JJ
472011-02-18 Jakub Jelinek <jakub@redhat.com>
48
49 PR libgomp/47804
50 * testsuite/libgomp.fortran/fortran.exp: Check for both
51 libquadmath.a and libquadmath.${shlib_ext}. If neither exists,
52 but $blddir != "", still append ${blddir}/${lang_library_path}
53 to ld_library_path.
54
3808007c
TB
552011-02-16 Tobias Burnus <burnus@net-b.de>
56
57 PR libgomp/47758
58 * testsuite/libgomp.fortran/fortran.exp: Check for the existence
59 of libquadmath.a before adding its libpath to ldflags.
60
53b4d41d
JJ
612011-02-14 Jakub Jelinek <jakub@redhat.com>
62
63 PR libgomp/47731
64 * config/linux/futex.h (futex_wait): Pass NULL as timeout argument
65 to FUTEX_WAIT futex syscall.
66 * config/linux/wait.h: Include <futex.h> instead of "futex.h".
67
029c8f3e
RW
682011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
69
70 * configure: Regenerate.
71
bddd6626
BK
722011-01-20 Benjamin Kosnik <bkoz@redhat.com>
73
74 PR libstdc++/36104
75 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.
76
f1d4ab26
GP
772011-01-16 Gerald Pfeifer
78
79 * configure.tgt (*-*-freebsd*): Add -lpthread to XLDFLAGS.
80
2b503136
JJ
812010-12-14 Jakub Jelinek <jakub@redhat.com>
82
83 PR fortran/46874
84 * libgomp.fortran/allocatable6.f90: New test.
85
c0f9d583
RO
862010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
87
88 * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
89 * configure: Regenerate.
90
7de6ba7a
DK
912010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
92
93 PR target/40125
94 PR lto/46695
95 * configure.ac: Invoke ACX_LT_HOST_FLAGS.
96 * Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
97 * aclocal.m4: Regenerate.
98 * configure: Regenerate.
99 * Makefile.in: Regenerate.
100 * testsuite/Makefile.in: Regenerate.
101
b7516041
JJ
1022010-12-02 Jakub Jelinek <jakub@redhat.com>
103
edaadf74
JJ
104 PR fortran/46753
105 * libgomp.fortran/pr46753.f90: New test.
106
4c698cf8
JJ
107 PR libgomp/43706
108 * env.c (initialize_env): Default to spin count 300000
109 instead of 20000000 if neither OMP_WAIT_POLICY nor GOMP_SPINCOUNT
110 is specified.
111
b7516041
JJ
112 PR libgomp/45240
113 * parallel.c (GOMP_parallel_end): Unlock gomp_remaining_threads_lock
114 at the end if sync builtins aren't supported.
115
6b43a34c
RO
1162010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
117
118 * configure.tgt (mips-sgi-irix6*): Add -lpthread to XLDFLAGS.
119
950691fa
RO
1202010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
121
122 * testsuite/libgomp.fortran/vla8.f90: Use dg-timeout-factor 2.0.
123
fb9041ea
IS
1242010-11-24 Iain Sandoe <iains@gcc.gnu.org>
125
126 * testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath.
127
1ec601bf
FXC
1282010-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
129 Tobias Burnus <burnus@net-b.de>
130
131 PR fortran/32049
132 * configure.ac:
133 * configure: Regenerate.
134
d213e92e
MS
1352010-10-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
136
137 * config/linux/futex.h: New.
138 * config/linux/arm/mutex.h: New.
139 * configure.tgt (arm*-*-linux*): Add config path.
140
89d5c66f
SP
1412010-09-30 Sebastian Pop <sebastian.pop@amd.com>
142
143 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
144
87350d4a
TB
1452010-09-23 Tobias Burnus <burnus@net-b.de>
146
147 * libgomp.texi (omp_get_nested, omp_set_nested, omp_set_dynamic):
148 Change Fortran datatype to LOGICAL.
149 (omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
150 omp_unset_nested_lock): Use intent(inout) instead of intent(out).
151
75bc9e5e
RW
1522010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
153
154 * configure: Regenerate.
155
acb5c916
JJ
1562010-07-26 Jakub Jelinek <jakub@redhat.com>
157
158 * libgomp.texi: Add function keyword to a couple of Fortran
159 interfaces, use integer instead of int for Fortran.
160
6a2ba183
AH
1612010-07-26 Aldy Hernandez <aldyh@redhat.com>
162
163 * libgomp.texi: Fix spelling and pasto problems throughout.
164 Adjust prototypes to match code.
165
df161b69
TB
1662010-07-24 Tobias Burnus <burnus@net-b.de>
167
168 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add -w to
169 silence -fwhole-file warning.
170
16c9d3b1
RO
1712010-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
172
173 * configure.tgt (*-*-solaris2.[56]*): Removed.
174
6d28b933
RO
1752010-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
176
177 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
178 Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
179 LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
180 (HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
181 targetting solaris2*.
182 * configure: Regenerate.
183 * config.h.in: Regenerate.
184
185 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
186 libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
187 Add libgomp_version_dep.
188 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
189 versioning.
190 [!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
191 (libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
192 * Makefile.in: Regenerate.
193
194 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
195 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
196 * libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
197 to common block, protected by
198 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
199
07a67d6a
GP
2002010-06-10 Gerald Pfeifer <gerald@pfeifer.com>
201
202 * libgomp.texi: Move to GFDL version 1.3. Update copyright years.
203
dbd34b89
IS
2042010-06-09 Iain Sandoe <iains@gcc.gnu.org>
205
206 PR bootstrap/43170
207 * configure: Regenerate.
208
13917ae3
RW
2092010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
210
211 PR other/43620
212 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
213 * configure: Regenerate.
214 * Makefile.in: Regenerate.
215 * testsuite/Makefile.in: Regenerate.
216
b83a701b
JJ
2172010-04-26 Jakub Jelinek <jakub@redhat.com>
218
219 PR c/43893
220 * testsuite/libgomp.c/pr43893.c: New test.
221 * testsuite/libgomp.c++/pr43893.C: New test.
222
78db7d92
JJ
2232010-04-21 Jakub Jelinek <jakub@redhat.com>
224
225 PR middle-end/43570
226 * testsuite/libgomp.fortran/vla8.f90: New test.
227
5221d7a9
JJ
2282010-04-20 Jakub Jelinek <jakub@redhat.com>
229
e4ba7a60
JJ
230 PR libgomp/43706
231 * config/linux/affinity.c (gomp_init_affinity): Decrease
232 gomp_available_cpus if affinity mask confines the process to fewer
233 CPUs.
234 * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is
235 non-NULL, just return gomp_available_cpus.
236
5221d7a9
JJ
237 PR libgomp/43569
238 * sections.c (gomp_sections_init): Initialize ws->mode.
239
289a9f86
UB
2402010-04-14 Uros Bizjak <ubizjak@gmail.com>
241
242 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
243 not unused bar variable.
244 * configure: Regenerate.
245
4d9e8446
RW
2462010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
247
248 * Makefile.in: Regenerate.
249 * aclocal.m4: Regenerate.
250 * testsuite/Makefile.in: Regenerate.
251
80f046cc
JJ
2522010-03-22 Jakub Jelinek <jakub@redhat.com>
253
254 PR libgomp/42942
255 * env.c (parse_unsigned_long): Add ALLOW_ZERO argument.
256 (initialize_env): Adjust callers.
257 (omp_set_max_active_levels): Set gomp_max_active_levels_var even
258 when the argument is 0.
259
260 * testsuite/libgomp.c/pr42942.c: New test.
261
b58543c3
SP
2622010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
263
264 PR middle-end/42644
265 PR middle-end/42130
266 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
267 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust.
268
41d1138f
RO
2692010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
270
271 * testsuite/libgomp.c++/task-1.C: Renamed err to e.
272 * testsuite/libgomp.c++/task-6.C: Likewise.
273
6684eb28
SE
2742010-01-28 Steve Ellcey <sje@cup.hp.com>
275
276 * configure.tgt (*-*-hpux*): Add -frandom-seed flag.
277
2122aa97
PB
2782010-01-26 Paolo Bonzini <bonzini@gnu.org>
279
280 * configure.ac: Test for executability of _the first word_ of GFORTRAN.
281 * configure: Regenerate.
282
057dd91d
JJ
2832010-01-26 Jakub Jelinek <jakub@redhat.com>
284
285 PR fortran/42866
286 * testsuite/libgomp.fortran/allocatable5.f90: New test.
287
d0709b6a
PB
2882010-01-20 Paolo Bonzini <bonzini@gnu.org>
289
290 * configure.ac: Test for executability of GFORTRAN.
291 * configure: Regenerate.
292
b9497ab5
RO
2932010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
294
295 * configure: Regenerate.
296
45de5648
L
2972010-01-04 H.J. Lu <hongjiu.lu@intel.com>
298
299 PR libgomp/42602
300 * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic.
301
e74003a1
RG
3022010-01-03 Richard Guenther <rguenther@suse.de>
303
304 * testsuite/libgomp.fortran/recursion1.f90: New testcase.
305
1b3abda8
SP
3062009-12-23 Sebastian Pop <sebpop@gmail.com>
307
308 * testsuite/libgomp.graphite/pr4118.c: New.
309
e19977d3
IS
3102009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
311
312 * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage
313 for darwin, protect the test with require-effective-target tls_runtime.
314 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
315
1d32a772
IS
3162009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
317
318 PR target/41605
319 * testsuite/lib/libgomp.exp: Provide -B options to allow for
320 link spec %s substitutions for static libraries.
321
deb109b2
JH
3222009-12-18 Jack Howarth <howarth@bromo.med.uc.edu>
323
324 PR testsuite/42135
325 * libgomp.graphite/force-parallel-2.c: Reduce array size.
326
43e02a8a
RW
3272009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
328
329 * Makefile.in: Regenerate.
330 * configure: Regenerate.
331 * testsuite/Makefile.in: Regenerate.
332
17f35e23
DK
3332009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
334
335 * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
336 settings for LC_ALL and LANG.
337
281e33e1
JJ
3382009-11-25 Jakub Jelinek <jakub@redhat.com>
339
340 PR fortran/42162
341 * testsuite/libgomp.fortran/pr42162.f90: New test.
342
2b32c27d
JJ
3432009-11-13 Jakub Jelinek <jakub@redhat.com>
344
345 PR middle-end/42029
281e33e1 346 * testsuite/libgomp.c/pr42029.c: New test.
2b32c27d 347
89c74f4a
JJ
3482009-10-26 Jakub Jelinek <jakub@redhat.com>
349
350 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
351 *s. Accept ld version without text in ()s.
352 * configure: Regenerated.
353
7e06c3d6
EB
3542009-10-22 Razya Ladelsky <razya@il.ibm.com>
355
356 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan.
357
0046b1a7
RW
3582009-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
359
360 PR libgomp/41418
361 * configure.ac: Set FC to "no" if $GFORTRAN starts with "no"
362 or a hyphen (happens with fortran language disabled).
363 * configure: Regenerate.
364
c82852f7
RW
3652009-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
366
367 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
368 use sed script portable to Solaris /bin/sed for extracting ld
369 version.
370 * configure: Regenerate.
371
98f3eb1f
AM
3722009-09-17 Alexander Monakov <amonakov@ispras.ru>
373
374 * testsuite/libgomp.graphite/bounds.c: New test.
375
878f62e5
RW
3762009-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
377
378 * Makefile.am (libgomp_la_LINK): New.
379 * Makefile.in: Regenerate.
380
df58e648
RW
3812009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
382
383 * configure.ac (AC_PREREQ): Bump to 2.64.
384
5213506e
RW
3852009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
386
70fa0efa
RW
387 * Makefile.am (install-html, install-pdf): Remove.
388 * Makefile.in: Regenerate.
389
5213506e
RW
390 * Makefile.in: Regenerate.
391 * aclocal.m4: Regenerate.
392 * config.h.in: Regenerate.
393 * configure: Regenerate.
394 * testsuite/Makefile.in: Regenerate.
395
84fec8a5
RW
3962009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
397
398 * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
399 * Makefile.in: Regenerate.
400
197c68cc
DK
4012009-08-20 Dave Korn <dave.korn.cygwin@gmail.com>
402
403 * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.
404 * Makefile.in: Regenerate.
405
693d54f2
TB
4062009-08-19 Tobias Burnus <burnus@net-b.de>
407
408 PR fortran/41102
409 omp_lib.h.in: Fix -std=f95 errors.
410
411
8cac884c
DE
4122009-08-14 David Edelsohn <edelsohn@gnu.org>
413
414 * testsuite/libgomp.graphite: Move from gcc.dg/graphite.
415 * testsuite/libgomp.graphite/graphite_autopar.exp: Delete.
416 * testsuite/libgomp.graphite/graphite.exp: New.
417
78729ee2
AT
4182009-08-05 Andreas Tobler <a.tobler@schweiz.org>
419
420 * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared
421 only build.
422
b13b7f39
DD
4232009-08-04 David Daney <ddaney@caviumnetworks.com>
424
425 * config/linux/mutex.h (gomp_mutex_unlock): Add comment about
426 needed memory barrier semantics.
427 * config/linux/mips/mutex.h: New file.
428
1b3b24c2
RW
4292009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
430
431 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
432
396b7fa4
JM
4332009-07-16 Joseph Myers <joseph@codesourcery.com>
434
435 * configure: Regenerate.
436
33cde516
RS
4372009-07-11 Richard Sandiford <rdsandiford@googlemail.com>
438
439 PR testsuite/40699
440 PR testsuite/40707
441 PR testsuite/40709
442 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
443 * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
444 testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.
445
bc21bfa5
RS
4462009-07-02 Richard Sandiford <r.sandiford@uk.ibm.com>
447
448 * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
449 options when choosing a multilib.
450
b30bfd40
RS
4512009-06-30 Richard Sandiford <r.sandiford@uk.ibm.com>
452
453 * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
454 ld_library_path. Use add_path. Add just find_libgcc_s to
455 ld_library_path, not every libgcc multilib directory.
456 * testsuite/libgomp.c/c.exp (ld_library_path): Don't call
457 gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
458 * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
459 Use add_path.
460 * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
461
479c15c2
NF
4622009-06-09 Nathan Froyd <froydnj@codesourcery.com>
463
464 * Makefile.am (LTLDFLAGS): Define.
465 (LINK): Define.
466 * Makefile.in: Regenerate.
467
667e6f89
JB
4682009-05-27 Janne Blomqvist <jb@gcc.gnu.org>
469
470 PR fortran/39718
471 * testsuite/libgomp.fortran/fortran.exp: Don't link with
472 libgfortranbegin, check existence of libgfortran.a instead of
473 libgfortranbegin.a.
474
6dea8e99
JJ
4752009-05-20 Jakub Jelinek <jakub@redhat.com>
476
477 PR libgomp/40174
478 * team.c (gomp_thread_start): Destroy thr->release semaphore.
479 (gomp_free_pool_helper): Likewise.
480
34d01e1d
VL
4812009-04-20 Vasilis Liaskovitis <vliaskov@gmail.com>
482 Jakub Jelinek <jakub@redhat.com>
483
484 PR fortran/35423
485 * testsuite/libgomp.fortran/workshare2.f90: New test.
486
748086b7
JJ
4872009-04-09 Nick Clifton <nickc@redhat.com>
488
489 * iter.c: Change copyright header to refer to version 3 of the
490 GNU General Public License with version 3.1 of the GCC Runtime
491 Library Exception and to point readers at the COPYING3 and
492 COPYING3.RUNTIME files and the FSF's license web page.
493 * alloc.c: Likewise.
494 * barrier.c: Likewise.
495 * config/bsd/proc.c: Likewise.
496 * config/linux/affinity.c: Likewise.
497 * config/linux/alpha/futex.h: Likewise.
498 * config/linux/bar.c: Likewise.
499 * config/linux/bar.h: Likewise.
500 * config/linux/ia64/futex.h: Likewise.
501 * config/linux/ia64/mutex.h: Likewise.
502 * config/linux/lock.c: Likewise.
503 * config/linux/mips/futex.h: Likewise.
504 * config/linux/mutex.c: Likewise.
505 * config/linux/mutex.h: Likewise.
506 * config/linux/powerpc/futex.h: Likewise.
507 * config/linux/proc.c: Likewise.
508 * config/linux/ptrlock.c: Likewise.
509 * config/linux/ptrlock.h: Likewise.
510 * config/linux/s390/futex.h: Likewise.
511 * config/linux/sem.c: Likewise.
512 * config/linux/sem.h: Likewise.
513 * config/linux/sparc/futex.h: Likewise.
514 * config/linux/wait.h: Likewise.
515 * config/linux/x86/futex.h: Likewise.
516 * config/mingw32/proc.c: Likewise.
517 * config/mingw32/time.c: Likewise.
518 * config/posix/affinity.c: Likewise.
519 * config/posix/bar.c: Likewise.
520 * config/posix/bar.h: Likewise.
521 * config/posix/lock.c: Likewise.
522 * config/posix/mutex.h: Likewise.
523 * config/posix/proc.c: Likewise.
524 * config/posix/ptrlock.h: Likewise.
525 * config/posix/sem.c: Likewise.
526 * config/posix/sem.h: Likewise.
527 * config/posix/time.c: Likewise.
528 * config/posix95/lock.c: Likewise.
529 * critical.c: Likewise.
530 * env.c: Likewise.
531 * error.c: Likewise.
532 * fortran.c: Likewise.
533 * iter_ull.c: Likewise.
534 * libgomp.h: Likewise.
535 * libgomp_f.h.in: Likewise.
536 * libgomp_g.h: Likewise.
537 * loop.c: Likewise.
538 * loop_ull.c: Likewise.
539 * omp.h.in: Likewise.
540 * omp_lib.f90.in: Likewise.
541 * omp_lib.h.in: Likewise.
542 * ordered.c: Likewise.
543 * parallel.c: Likewise.
544 * sections.c: Likewise.
545 * single.c: Likewise.
546 * task.c: Likewise.
547 * team.c: Likewise.
548 * work.c: Likewise.
549
5502009-04-09 Jakub Jelinek <jakub@redhat.com>
551
552 * testsuite/config/default.exp: Change copyright header to refer to
553 version 3 of the GNU General Public License and to point readers
554 at the COPYING3 file and the FSF's license web page.
555
4f0ae266
JJ
5562009-04-08 Jakub Jelinek <jakub@redhat.com>
557
558 PR middle-end/39573
559 * libgomp.c++/pr39573.C: New test.
560
03742a9b
JJ
5612009-04-01 Jakub Jelinek <jakub@redhat.com>
562
563 PR other/39591
564 * testsuite/libgomp.c/pr39591-1.c: New test.
565 * testsuite/libgomp.c/pr39591-2.c: New test.
566 * testsuite/libgomp.c/pr39591-3.c: New test.
567
e50ea10b
UB
5682009-03-25 Uros Bizjak <ubizjak@gmail.com>
569
570 * testsuite/libgomp.c/atomic-5.c: Cleanup cpuid usage.
571 * testsuite/libgomp.c/atomic-6.c: Ditto.
572
c5cdb03f
JJ
5732009-03-23 Jakub Jelinek <jakub@redhat.com>
574
575 PR c/39495
576 * testsuite/libgomp.c/loop-12.c: New test.
577 * testsuite/libgomp.c/loop-11.c: New test.
578 * testsuite/libgomp.c++/loop-11.C: New test.
579 * testsuite/libgomp.c++/loop-12.C: New test.
580 * testsuite/libgomp.c++/for-8.C: New test.
581
7a9d3fe8
RW
5822009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
583
584 * configure: Regenerate.
585
3ad6b266
JJ
5862009-02-11 Jakub Jelinek <jakub@redhat.com>
587
588 PR middle-end/39154
589 * testsuite/libgomp.c/pr39154.c: New test.
590
b39dea08
ILT
5912009-01-30 Ian Lance Taylor <iant@google.com>
592
593 * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
594 libgomp_ld_is_gold. Get gold version number.
595 (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
596 * configure: Rebuild.
597
72c66596
IS
5982009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
599
e50ea10b 600 * testsuite/lib/libgomp.exp: Add -B option for targets that
72c66596
IS
601 use libgfortran.a%s in their specs.
602
876080ff
JJ
6032009-01-07 Jakub Jelinek <jakub@redhat.com>
604
605 PR libgomp/38086
606 * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New check.
607 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undefine if
608 HAVE_AS_SYMVER_DIRECTIVE is not defined.
609 * configure: Regenerated.
610 * config.h.in: Likewise.
611
e4ebaef3
JJ
6122008-12-28 Jakub Jelinek <jakub@redhat.com>
613
614 PR c++/38650
615 * testsuite/libgomp.c/pr38650.c: New test.
616 * testsuite/libgomp.c++/pr38650.C: New test.
617
382017a6
JJ
6182008-12-27 Jakub Jelinek <jakub@redhat.com>
619
620 * testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
621
79644b27
UB
6222008-12-26 Uros Bizjak <ubizjak@gmail.com>
623
624 * testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
625
baafc534
RW
6262008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
627
628 * configure: Regenerate.
629
d9c194cb
JJ
6302008-12-08 Jakub Jelinek <jakub@redhat.com>
631
632 PR middle-end/36802
633 * testsuite/libgomp.c/pr36802-1.c: New test.
634 * testsuite/libgomp.c/pr36802-2.c: New test.
635 * testsuite/libgomp.c/pr36802-3.c: New test.
636
86a182bf
JJ
6372008-12-01 Janis Johnson <janis187@us.ibm.com>
638
639 PR libgomp/38270
640 * config/linux/powerpc/mutex.h: New.
641
956adfaf
JJ
6422008-12-01 Jakub Jelinek <jakub@redhat.com>
643
a2d4cdc9
JJ
644 PR c++/38257
645 * testsuite/libgomp.c++/for-7.C: New test.
646
956adfaf
JJ
647 PR c++/38348
648 * testsuite/libgomp.c++/for-6.C: New test.
649
d4038ca2
JJ
6502008-11-26 Janis Johnson <janis187@us.ibm.com>
651
652 PR testsuite/28870
653 * testsuite/lib/libgomp.exp: Include new timeout library files.
654 (libgomp_target_compile): Set timeout value from new proc.
655
8b159eea
SE
6562008-11-13 Steve Ellcey <sje@cup.hp.com>
657
658 PR libgomp/37938
659 * config/linux/ia64/mutex.h: New.
660
5c6ed53a
TB
6612008-11-04 Tobias Burnus <burnus@net-b.de>
662
663 PR libgomp/37935
664 * libgomp.texi (Runtime library routines, environment variables):
665 Update for OpenMP version 3.0.
666
6b4a97ed
PG
6672008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
668 Steve Ellcey <sje@cup.hp.com>
669
670 * configure: Regenerate for new libtool.
671 * Makefile.in: Ditto.
672 * testsuite/Makefile.in: Ditto.
673
e2b34106
JJ
6742008-09-19 Jakub Jelinek <jakub@redhat.com>
675 Andreas Tobler <a.tobler@schweiz.org>
676
677 * config/bsd/proc.c: New file.
8c3b3600 678 * configure.tgt (*-*-darwin*): Use config_path "bsd posix".
e2b34106
JJ
679 * configure.ac: Check for header <sys/sysctl.h>
680 * configure: Regenerate.
681 * config.h.in: Likewise.
682
3606b8bf
JJ
6832008-09-05 Janis Johnson <janis187@us.ibm.com>
684
685 * testsuite/ligbomp.c/c.exp: Unset lang_test_file only if it exists.
686
6528b88d
AL
6872008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
688
689 * Makefile.am (libgomp_la_LDFLAGS): Add -no-undefined.
690 * Makefile.in: Regenerated.
691 * testsuite/Makefile.in: Regenerated.
692
d9b14b12 6932008-08-21 Nathan Froyd <froydnj@codesourcery.com>
8c9570df 694
a16b68bb 695 * testsuite/lib/libgomp.exp (libgomp_init): Only set things that
8c9570df
NF
696 depend on blddir if blddir exists.
697 (libgomp_target_compile): Likewise.
698 * testsuite/libgomp.c++/c++.exp: Likewise.
699 * testsuite/libgomp.fortran/fortran.exp: Likewise.
700
70b1e376
RW
7012008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
702
703 * libgomp.texi: Update to GFDL 1.2. Update copyright years.
704 Do not list GPL as Invariant Section.
705
318e8c3f
IG
7062008-07-28 Ilie Garbacea <ilie@mips.com>
707 Chao-ying Fu <fu@mips.com>
708
709 * configure.tgt: Enable futex for MIPS.
710 * config/linux/mips/futex.h: New file.
711
4db72361
JJ
7122008-07-16 Jakub Jelinek <jakub@redhat.com>
713
714 * team.c (gomp_team_end): Free team immediately if it has
715 just one thread.
716
87bd23b8
DE
7172008-07-08 David Edelsohn <edelsohn@gnu.org>
718
719 * testsuite/libgomp.c++/c++.exp: Append multilib library path.
720 * testsuite/libgomp.fortran/fortran.exp: Same.
721 * testsuite/libgomp.c/c.exp: Same.
722 * testsuite/lib/libgomp.exp: Append AIX libgcc pthread multilib
723 directory to library path first.
724
323ff903
KW
7252008-06-29 Krister Walfridsson <krister.walfridsson@gmail.com>
726
727 * env.c (parse_stacksize): Add cast to avoid warning.
728 (parse_spincount): Likewise.
729
b357f682
JJ
7302008-06-27 Jakub Jelinek <jakub@redhat.com>
731
ca2b1311
JJ
732 * testsuite/libgomp.c/loop-10.c: New test.
733 * libgomp.c/loop-3.c (main): Add lastprivate clause.
734 * libgomp.c++/loop-6.C (main): Likewise.
735
b357f682
JJ
736 PR debug/36617
737 * testsuite/libgomp.c/debug-1.c: New test.
738
09a46078
JJ
7392008-06-19 Jakub Jelinek <jakub@redhat.com>
740
741 * testsuite/libgomp.c/nqueens-1.c: New test.
742
2368a460
JJ
743 PR c++/36523
744 * testsuite/libgomp.c++/task-7.C: New function.
745
18c04407
RW
7462008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
747
748 * configure: Regenerate.
749
9c4e59e0
JDA
7502008-06-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
751
752 * env.c (initialize_env): Always initialize gomp_remaining_threads_lock
753 mutex when HAVE_SYNC_BUILTINS isn't defined.
754
6ccde948
RW
7552008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
756
757 * libgomp.texi (omp_test_lock): Fix typo.
758
b896f9fd
TB
7592008-06-12 Tobias Burnus <burnus@net-b.de>
760
761 * omp_lib.f90.in: Add "implicit none".
762
c34938a8
JJ
7632008-06-12 Jakub Jelinek <jakub@redhat.com>
764
765 PR middle-end/36506
766 * testsuite/libgomp.c/reduction-5.c: New test.
767
976e44e3
JJ
7682008-06-11 Jakub Jelinek <jakub@redhat.com>
769
5f836cbb
JJ
770 * libgomp.h (struct gomp_task): Add in_tied_task field.
771 * task.c (gomp_init_task): Initialize it.
772 (GOMP_task): Likewise. Call gomp_team_barrier_set_task_pending
773 unconditionally. Don't call gomp_team_barrier_wake if
774 current task is implicit or if(0) from implicit and number of
775 running tasks is equal to nthreads - 1.
776
01501fc8
JJ
777 PR libgomp/36471
778 * omp_lib.f90.in (omp_get_ancestor_thread_num_8,
779 omp_get_team_size_8): Fix pastos.
780
976e44e3
JJ
781 PR libgomp/36469
782 * configure.ac: Add AC_CHECK_FUNCS (strtoull).
783 * configure: Regenerated.
784 * config.h.in: Regenerated.
785 * env.c (strtoull): Define to strtoul if HAVE_STRTOULL is not
786 defined.
787
e919209b
AT
7882008-06-06 Andreas Tobler <a.tobler@schweiz.org>
789
790 PR bootstrap/36452
791 * loop_ull.c (GOMP_loop_ull_static_start): Adjust API.
792 (GOMP_loop_ull_dynamic_start): Likewise.
793 (GOMP_loop_ull_guided_start): Likewise.
794 (GOMP_loop_ull_ordered_static_start): Likewise.
795 (GOMP_loop_ull_ordered_dynamic_start): Likewise.
796 (GOMP_loop_ull_ordered_guided_start): Likewise.
797
a68ab351
JJ
7982008-06-06 Jakub Jelinek <jakub@redhat.com>
799 Richard Henderson <rth@redhat.com>
800 Ulrich Drepper <drepper@redhat.com>
801 Jakob Blomer <jakob.blomer@ira.uka.de>
802
803 * configure.ac (LIBGOMP_GNU_SYMBOL_VERSIONING): New AC_DEFINE.
804 Substitute also OMP_*LOCK_25*.
805 * configure: Regenerated.
806 * config.h.in: Regenerated.
807 * Makefile.am (libgomp_la_SOURCES): Add loop_ull.c, iter_ull.c,
808 ptrlock.c and task.c.
809 * Makefile.in: Regenerated.
810 * testsuite/Makefile.in: Regenerated.
811 * task.c: New file.
812 * loop_ull.c: New file.
813 * iter_ull.c: New file.
814 * libgomp.h: Include ptrlock.h.
815 (enum gomp_task_kind): New type.
816 (struct gomp_team): Add task_lock, task_queue, task_count,
817 task_running_count, single_count fields. Add
818 work_share_list_free_lock ifndef HAVE_SYNC_BUILTINS.
819 Remove work_share_lock, generation_mask,
820 oldest_live_gen, num_live_gen and init_work_shares fields, add
821 work work_share_list_alloc, work_share_list_free and work_share_chunk
822 fields. Change work_shares from pointer to pointers into an array.
823 Change ordered_release field into gomp_sem_t ** from flexible array
824 member. Add implicit_task and initial_work_shares fields.
825 Move close to the end of the struct.
826 (struct gomp_team_state): Add single_count, last_work_share,
827 active_level and level fields, remove work_share_generation.
828 (gomp_barrier_handle_tasks): New prototype.
829 (gomp_finish_task): New inline function.
830 (struct gomp_work_share): Move chunk_size, end, incr into
831 transparent union/struct, add chunk_size_ull, end_ll, incr_ll and
832 next_ll fields. Reshuffle fields. Add next_alloc,
833 next_ws, next_free and inline_ordered_team_ids fields, change
834 ordered_team_ids into pointer from flexible array member.
835 Add mode field. Put lock and next into a different cache line
836 from most of the write-once fields.
837 (gomp_iter_ull_static_next, gomp_iter_ull_dynamic_next_locked,
838 gomp_iter_ull_guided_next_locked, gomp_iter_ull_dynamic_next,
839 gomp_iter_ull_guided_next): New prototypes.
840 (gomp_new_icv): New prototype.
841 (struct gomp_thread): Add thread_pool and task fields.
842 (struct gomp_thread_pool): New type.
843 (gomp_new_team): New prototype.
844 (gomp_team_start): Change type of last argument.
845 (gomp_new_work_share): Removed.
846 (gomp_init_work_share, gomp_fini_work_share): New prototypes.
847 (gomp_work_share_init_done): New static inline.
848 (gomp_throttled_spin_count_var, gomp_available_cpus,
849 gomp_managed_threads): New extern decls.
850 (gomp_init_task): New prototype.
851 (gomp_spin_count_var): New extern var decl.
852 (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef if no visibility
853 or no alias support, or if not PIC.
854 (gomp_init_lock_30, gomp_destroy_lock_30, gomp_set_lock_30,
855 gomp_unset_lock_30, gomp_test_lock_30, gomp_init_nest_lock_30,
856 gomp_destroy_nest_lock_30, gomp_set_nest_lock_30,
857 gomp_unset_nest_lock_30, gomp_test_nest_lock_30, gomp_init_lock_25,
858 gomp_destroy_lock_25, gomp_set_lock_25, gomp_unset_lock_25,
859 gomp_test_lock_25, gomp_init_nest_lock_25, gomp_destroy_nest_lock_25,
860 gomp_set_nest_lock_25, gomp_unset_nest_lock_25,
861 gomp_test_nest_lock_25): New prototypes.
862 (omp_lock_symver, strong_alias): Define.
863 (gomp_remaining_threads_count, gomp_remaining_threads_lock): New
864 decls.
865 (gomp_end_task): New.
866 (struct gomp_task_icv, gomp_global_icv): New.
867 (gomp_thread_limit_var, gomp_max_active_levels_var): New.
868 (struct gomp_task): New.
869 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
870 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
871 (gomp_icv): New.
872 (gomp_schedule_type): Reorder enum to match
873 omp_sched_t.
874 * team.c (struct gomp_thread_start_data): Add thread_pool and task
875 fields.
876 (gomp_thread_start): Add gomp_team_barrier_wait call.
877 For non-nested case remove clearing of docked thread thr fields.
878 Use pool fields instead of global gomp_* variables. Use
879 gomp_barrier_wait_last when needed. Initialize ts.active_level.
880 Create tasks for each member thread.
881 (free_team): Only destroy team barrier, task_lock here and free it.
882 (gomp_free_thread): Free last_team if non-NULL.
883 (gomp_team_end): Call gomp_team_barrier_wait instead of
884 gomp_barrier_wait. For nested case call one extra
885 gomp_barrier_wait. Move here some destruction from free_team.
886 Call free_team on pool->last_team if any, rather than freeing
887 current team. Destroy work_share_list_free_lock ifndef
888 HAVE_SYNC_BUILTINS.
889 (gomp_new_icv): New function.
890 (gomp_threads, gomp_threads_size, gomp_threads_used,
891 gomp_threads_dock): Removed.
892 (gomp_thread_destructor): New variable.
893 (gomp_new_thread_pool, gomp_free_pool_helper, gomp_free_thread): New
894 functions.
895 (gomp_team_start): Create new pool if current thread doesn't have
896 one. Use pool fields instead of global gomp_* variables.
897 Initialize thread_pool field for new threads. Clear single_count.
898 Change last argument from ws to team, don't create
899 new team, set ts.work_share to &team->work_shares[0] and clear
900 ts.last_work_share. Don't clear ts.work_share_generation.
901 If number of threads changed, adjust atomically gomp_managed_threads.
902 Use gomp_init_task instead of gomp_new_task,
903 set thr->task to the corresponding implicit_task array entry.
904 Create tasks for each member thread. Initialize ts.level.
905 (initialize_team): Call pthread_key_create on
906 gomp_thread_destructor.
907 (team_destructor): New function.
908 (new_team): Removed.
909 (gomp_new_team): New function.
910 (free_team): Free gomp_work_share blocks chained through next_alloc,
911 instead of freeing work_shares and destroying work_share_lock.
912 (gomp_team_end): Call gomp_fini_work_share. If number of threads
913 changed, adjust atomically gomp_managed_threads. Use gomp_end_task.
914 * barrier.c (GOMP_barrier): Call gomp_team_barrier_wait instead
915 of gomp_barrier_wait.
916 * single.c (GOMP_single_copy_start): Call gomp_team_barrier_wait
917 instead of gomp_barrier_wait. Call gomp_work_share_init_done
918 if gomp_work_share_start returned true. Don't unlock ws->lock.
919 (GOMP_single_copy_end): Call gomp_team_barrier_wait instead
920 of gomp_barrier_wait.
921 (GOMP_single_start): Rewritten if HAVE_SYNC_BUILTINS. Call
922 gomp_work_share_init_done if gomp_work_share_start returned true.
923 Don't unlock ws->lock.
924 * work.c: Include stddef.h.
925 (free_work_share): Use work_share_list_free_lock instead
926 of atomic chaining ifndef HAVE_SYNC_BUILTINS. Add team argument.
927 Call gomp_fini_work_share and then either free ws if orphaned, or
928 put it into work_share_list_free list of the current team.
929 (alloc_work_share, gomp_init_work_share, gomp_fini_work_share): New
930 functions.
931 (gomp_work_share_start, gomp_work_share_end,
932 gomp_work_share_end_nowait): Rewritten.
933 * omp_lib.f90.in Change some tabs to spaces to prevent warnings.
934 (openmp_version): Set to 200805.
935 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
936 omp_sched_guided, omp_sched_auto): New parameters.
937 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
938 omp_set_max_active_levels, omp_get_max_active_levels,
939 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
940 omp_get_active_level): New interfaces.
941 * omp_lib.h.in (openmp_version): Set to 200805.
942 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
943 omp_sched_guided, omp_sched_auto): New parameters.
944 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
945 omp_set_max_active_levels, omp_get_max_active_levels,
946 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
947 omp_get_active_level): New externals.
948 * loop.c: Include limits.h.
949 (GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Handle
950 GFS_AUTO.
951 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start):
952 Likewise. Use gomp_icv.
953 (gomp_loop_static_start, gomp_loop_dynamic_start): Clear
954 ts.static_trip here.
955 (gomp_loop_static_start, gomp_loop_ordered_static_start): Call
956 gomp_work_share_init_done after gomp_loop_init. Don't unlock ws->lock.
957 (gomp_loop_dynamic_start, gomp_loop_guided_start): Call
958 gomp_work_share_init_done after gomp_loop_init. If HAVE_SYNC_BUILTINS,
959 don't unlock ws->lock, otherwise lock it.
960 (gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start): Call
961 gomp_work_share_init_done after gomp_loop_init. Lock ws->lock.
962 (gomp_parallel_loop_start): Call gomp_new_team instead of
963 gomp_new_work_share. Call gomp_loop_init on &team->work_shares[0].
964 Adjust gomp_team_start caller. Pass 0 as second argument to
965 gomp_resolve_num_threads.
966 (gomp_loop_init): For GFS_DYNAMIC, multiply ws->chunk_size by incr.
967 If adding ws->chunk_size nthreads + 1 times after end won't
968 overflow, set ws->mode to 1.
969 * libgomp_g.h (GOMP_loop_ull_static_start, GOMP_loop_ull_dynamic_start,
970 GOMP_loop_ull_guided_start, GOMP_loop_ull_runtime_start,
971 GOMP_loop_ull_ordered_static_start,
972 GOMP_loop_ull_ordered_dynamic_start,
973 GOMP_loop_ull_ordered_guided_start,
974 GOMP_loop_ull_ordered_runtime_start, GOMP_loop_ull_static_next,
975 GOMP_loop_ull_dynamic_next, GOMP_loop_ull_guided_next,
976 GOMP_loop_ull_runtime_next, GOMP_loop_ull_ordered_static_next,
977 GOMP_loop_ull_ordered_dynamic_next, GOMP_loop_ull_ordered_guided_next,
978 GOMP_loop_ull_ordered_runtime_next, GOMP_task, GOMP_taskwait): New
979 prototypes.
980 * libgomp.map: Export lock routines also @@OMP_2.0.
981 (GOMP_loop_ordered_dynamic_first,
982 GOMP_loop_ordered_guided_first, GOMP_loop_ordered_runtime_first,
983 GOMP_loop_ordered_static_first): Remove.
984 (GOMP_loop_ull_dynamic_next, GOMP_loop_ull_dynamic_start,
985 GOMP_loop_ull_guided_next, GOMP_loop_ull_guided_start,
986 GOMP_loop_ull_ordered_dynamic_next,
987 GOMP_loop_ull_ordered_dynamic_start,
988 GOMP_loop_ull_ordered_guided_next,
989 GOMP_loop_ull_ordered_guided_start,
990 GOMP_loop_ull_ordered_runtime_next,
991 GOMP_loop_ull_ordered_runtime_start,
992 GOMP_loop_ull_ordered_static_next,
993 GOMP_loop_ull_ordered_static_start,
994 GOMP_loop_ull_runtime_next, GOMP_loop_ull_runtime_start,
995 GOMP_loop_ull_static_next, GOMP_loop_ull_static_start,
996 GOMP_task, GOMP_taskwait): Export @@GOMP_2.0.
997 (omp_set_schedule, omp_get_schedule,
998 omp_get_thread_limit, omp_set_max_active_levels,
999 omp_get_max_active_levels, omp_get_level,
1000 omp_get_ancestor_thread_num, omp_get_team_size, omp_get_active_level,
1001 omp_set_schedule_, omp_set_schedule_8_,
1002 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
1003 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
1004 omp_get_max_active_levels_, omp_get_level_,
1005 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
1006 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
1007 New exports @@OMP_3.0.
1008 * omp.h.in (omp_sched_t): New type.
1009 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
1010 omp_set_max_active_levels, omp_get_max_active_levels,
1011 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
1012 omp_get_active_level): New prototypes.
1013 * env.c (gomp_spin_count_var, gomp_throttled_spin_count_var,
1014 gomp_available_cpus, gomp_managed_threads, gomp_max_active_levels_var,
1015 gomp_thread_limit_var, gomp_remaining_threads_count,
1016 gomp_remaining_threads_lock): New variables.
1017 (parse_spincount): New function.
1018 (initialize_env): Call gomp_init_num_threads unconditionally.
1019 Initialize gomp_available_cpus. Call parse_spincount,
1020 initialize gomp_{,throttled_}spin_count_var
1021 depending on presence and value of OMP_WAIT_POLICY and
1022 GOMP_SPINCOUNT env vars. Handle GOMP_BLOCKTIME env var.
1023 Handle OMP_WAIT_POLICY, OMP_MAX_ACTIVE_LEVELS,
1024 OMP_THREAD_LIMIT, OMP_STACKSIZE env vars. Handle unit specification
1025 for GOMP_STACKSIZE. Initialize gomp_remaining_threads_count and
1026 gomp_remaining_threads_lock if needed. Use gomp_global_icv.
1027 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
1028 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
1029 (gomp_global_icv): New.
1030 (parse_schedule): Use it. Parse "auto".
1031 (omp_set_num_threads): Use gomp_icv.
1032 (omp_set_dynamic, omp_get_dynamic, omp_set_nested, omp_get_nested):
1033 Likewise.
1034 (omp_get_max_threads): Move from parallel.c.
1035 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
1036 omp_set_max_active_levels, omp_get_max_active_levels): New functions,
1037 add ialias.
1038 (parse_stacksize, parse_wait_policy): New functions.
1039 * fortran.c: Rewrite lock wrappers, if symbol versioning provide
1040 both wrappers for compatibility and new locks.
1041 (omp_set_schedule, omp_get_schedule,
1042 omp_get_thread_limit, omp_set_max_active_levels,
1043 omp_get_max_active_levels, omp_get_level,
1044 omp_get_ancestor_thread_num, omp_get_team_size,
1045 omp_get_active_level): New ialias_redirect.
1046 (omp_set_schedule_, omp_set_schedule_8_,
1047 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
1048 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
1049 omp_get_max_active_levels_, omp_get_level_,
1050 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
1051 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
1052 New functions.
1053 * parallel.c: Include limits.h.
1054 (gomp_resolve_num_threads): Add count argument. Rewritten.
1055 (GOMP_parallel_start): Call gomp_new_team and pass that as last
1056 argument to gomp_team_start. Pass 0 as second argument to
1057 gomp_resolve_num_threads.
1058 (GOMP_parallel_end): Decrease gomp_remaining_threads_count
1059 if gomp_thread_limit_var != ULONG_MAX.
1060 (omp_in_parallel): Implement using ts.active_level.
1061 (omp_get_max_threads): Move to env.c.
1062 (omp_get_level, omp_get_ancestor_thread_num,
1063 omp_get_team_size, omp_get_active_level): New functions,
1064 add ialias.
1065 * sections.c (GOMP_sections_start): Call gomp_work_share_init_done
1066 after gomp_sections_init. If HAVE_SYNC_BUILTINS, call
1067 gomp_iter_dynamic_next instead of the _locked variant and don't take
1068 lock around it, otherwise acquire it before calling
1069 gomp_iter_dynamic_next_locked.
1070 (GOMP_sections_next): If HAVE_SYNC_BUILTINS, call
1071 gomp_iter_dynamic_next instead of the _locked variant and don't take
1072 lock around it.
1073 (GOMP_parallel_sections_start): Call gomp_new_team instead of
1074 gomp_new_work_share. Call gomp_sections_init on &team->work_shares[0].
1075 Adjust gomp_team_start caller. Pass count as second argument to
1076 gomp_resolve_num_threads, don't adjust num_threads after the call.
1077 Use gomp_icv.
1078 * iter.c (gomp_iter_dynamic_next_locked): Don't multiply
1079 ws->chunk_size by incr.
1080 (gomp_iter_dynamic_next): Likewise. If ws->mode, use more efficient
1081 code.
1082 * libgomp_f.h.in (omp_lock_25_arg_t, omp_nest_lock_25_arg_t): New
1083 types.
1084 (omp_lock_25_arg, omp_nest_lock_25_arg): New macros.
1085 (omp_check_defines): Check even the compat defines.
1086 * config/linux/ptrlock.c: New file.
1087 * config/linux/ptrlock.h: New file.
1088 * config/linux/wait.h: New file.
1089 * config/posix/ptrlock.c: New file.
1090 * config/posix/ptrlock.h: New file.
1091 * config/linux/bar.h (gomp_team_barrier_wait,
1092 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
1093 (gomp_team_barrier_set_task_pending,
1094 gomp_team_barrier_clear_task_pending,
1095 gomp_team_barrier_set_waiting_for_tasks,
1096 gomp_team_barrier_waiting_for_tasks,
1097 gomp_team_barrier_done): New inlines.
1098 (gomp_barrier_t): Rewritten.
1099 (gomp_barrier_state_t): New typedef.
1100 (gomp_barrier_init, gomp_barrier_reinit, gomp_barrier_destroy,
1101 gomp_barrier_wait_start): Rewritten.
1102 (gomp_barrier_wait_end): Change second argument to
1103 gomp_barrier_state_t.
1104 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
1105 inlines.
1106 * config/linux/bar.c: Include wait.h instead of libgomp.h and
1107 futex.h.
1108 (gomp_barrier_wait_end): Rewritten.
1109 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
1110 gomp_team_barrier_wake, gomp_barrier_wait_last): New functions.
1111 * config/posix/bar.h (gomp_barrier_t): Add generation field.
1112 (gomp_barrier_state_t): New typedef.
1113 (gomp_team_barrier_wait,
1114 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
1115 (gomp_barrier_wait_start): Or all but low 2 bits from generation
1116 into the return value. Return gomp_barrier_state_t.
1117 (gomp_team_barrier_set_task_pending,
1118 gomp_team_barrier_clear_task_pending,
1119 gomp_team_barrier_set_waiting_for_tasks,
1120 gomp_team_barrier_waiting_for_tasks,
1121 gomp_team_barrier_done): New inlines.
1122 (gomp_barrier_wait_end): Change second argument to
1123 gomp_barrier_state_t.
1124 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
1125 inlines.
1126 * config/posix/bar.c (gomp_barrier_init): Clear generation field.
1127 (gomp_barrier_wait_end): Change second argument to
1128 gomp_barrier_state_t.
1129 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
1130 gomp_team_barrier_wake): New functions.
1131 * config/linux/mutex.c: Include wait.h instead of libgomp.h and
1132 futex.h.
1133 (gomp_futex_wake, gomp_futex_wait): New variables.
1134 (gomp_mutex_lock_slow): Call do_wait instead of futex_wait.
1135 * config/linux/lock.c: Rewrite to make locks task owned,
1136 for backwards compatibility provide the old entrypoints
1137 if symbol versioning. Include wait.h instead of libgomp.h and
1138 futex.h.
1139 (gomp_set_nest_lock_25): Call do_wait instead of futex_wait.
1140 * config/posix95/lock.c: Rewrite to make locks task owned,
1141 for backwards compatibility provide the old entrypoints
1142 if symbol versioning.
1143 * config/posix/lock.c: Rewrite to make locks task owned,
1144 for backwards compatibility provide the old entrypoints
1145 if symbol versioning.
1146 * config/linux/proc.c (gomp_init_num_threads): Use gomp_global_icv.
1147 (get_num_procs, gomp_dynamic_max_threads): Use gomp_icv.
1148 * config/posix/proc.c, config/mingw32/proc.c: Similarly.
1149 * config/linux/powerpc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1150 (sys_futex0): Return error code.
1151 (futex_wake, futex_wait): If ENOSYS was returned, clear
1152 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1153 (cpu_relax, atomic_write_barrier): New static inlines.
1154 * config/linux/alpha/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1155 (futex_wake, futex_wait): If ENOSYS was returned, clear
1156 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1157 (cpu_relax, atomic_write_barrier): New static inlines.
1158 * config/linux/x86/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1159 (sys_futex0): Return error code.
1160 (futex_wake, futex_wait): If ENOSYS was returned, clear
1161 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1162 (cpu_relax, atomic_write_barrier): New static inlines.
1163 * config/linux/s390/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1164 (sys_futex0): Return error code.
1165 (futex_wake, futex_wait): If ENOSYS was returned, clear
1166 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1167 (cpu_relax, atomic_write_barrier): New static inlines.
1168 * config/linux/ia64/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1169 (sys_futex0): Return error code.
1170 (futex_wake, futex_wait): If ENOSYS was returned, clear
1171 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1172 (cpu_relax, atomic_write_barrier): New static inlines.
1173 * config/linux/sparc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1174 (sys_futex0): Return error code.
1175 (futex_wake, futex_wait): If ENOSYS was returned, clear
1176 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1177 (cpu_relax, atomic_write_barrier): New static inlines.
1178 * config/linux/sem.c: Include wait.h instead of libgomp.h and
1179 futex.h.
1180 (gomp_sem_wait_slow): Call do_wait instead of futex_wait.
1181 * config/linux/affinity.c: Assume HAVE_SYNC_BUILTINS.
1182 * config/linux/omp-lock.h (omp_lock_25_t, omp_nest_lock_25_t): New
1183 types.
1184 (omp_nest_lock_t): Change owner into void *, add lock field.
1185 * config/posix95/omp-lock.h: Include semaphore.h.
1186 (omp_lock_25_t, omp_nest_lock_25_t): New types.
1187 (omp_lock_t): Use sem_t instead of mutex if semaphores
1188 aren't broken.
1189 (omp_nest_lock_t): Likewise. Change owner to void *.
1190 * config/posix/omp-lock.h: Include semaphore.h.
1191 (omp_lock_25_t, omp_nest_lock_25_t): New types.
1192 (omp_lock_t): Use sem_t instead of mutex if semaphores
1193 aren't broken.
1194 (omp_nest_lock_t): Likewise. Add owner field.
1195
11962008-06-06 Jakub Jelinek <jakub@redhat.com>
1197
1198 * testsuite/libgomp.c/collapse-1.c: New test.
1199 * testsuite/libgomp.c/collapse-2.c: New test.
1200 * testsuite/libgomp.c/collapse-3.c: New test.
1201 * testsuite/libgomp.c/icv-1.c: New test.
1202 * testsuite/libgomp.c/icv-2.c: New test.
1203 * testsuite/libgomp.c/lib-2.c: New test.
1204 * testsuite/libgomp.c/lock-1.c: New test.
1205 * testsuite/libgomp.c/lock-2.c: New test.
1206 * testsuite/libgomp.c/lock-3.c: New test.
1207 * testsuite/libgomp.c/loop-4.c: New test.
1208 * testsuite/libgomp.c/loop-5.c: New test.
1209 * testsuite/libgomp.c/loop-6.c: New test.
1210 * testsuite/libgomp.c/loop-7.c: New test.
1211 * testsuite/libgomp.c/loop-8.c: New test.
1212 * testsuite/libgomp.c/loop-9.c: New test.
1213 * testsuite/libgomp.c/nested-3.c: New test.
1214 * testsuite/libgomp.c/nestedfn-6.c: New test.
1215 * testsuite/libgomp.c/sort-1.c: New test.
1216 * testsuite/libgomp.c/task-1.c: New test.
1217 * testsuite/libgomp.c/task-2.c: New test.
1218 * testsuite/libgomp.c/task-3.c: New test.
1219 * testsuite/libgomp.c/task-4.c: New test.
1220 * testsuite/libgomp.c++/c++.exp: Add libstdc++-v3 build includes
1221 to C++ testsuite default compiler options.
1222 * testsuite/libgomp.c++/collapse-1.C: New test.
1223 * testsuite/libgomp.c++/collapse-2.C: New test.
1224 * testsuite/libgomp.c++/ctor-10.C: New test.
1225 * testsuite/libgomp.c++/for-1.C: New test.
1226 * testsuite/libgomp.c++/for-2.C: New test.
1227 * testsuite/libgomp.c++/for-3.C: New test.
1228 * testsuite/libgomp.c++/for-4.C: New test.
1229 * testsuite/libgomp.c++/for-5.C: New test.
1230 * testsuite/libgomp.c++/loop-8.C: New test.
1231 * testsuite/libgomp.c++/loop-9.C: New test.
1232 * testsuite/libgomp.c++/loop-10.C: New test.
1233 * testsuite/libgomp.c++/task-1.C: New test.
1234 * testsuite/libgomp.c++/task-2.C: New test.
1235 * testsuite/libgomp.c++/task-3.C: New test.
1236 * testsuite/libgomp.c++/task-4.C: New test.
1237 * testsuite/libgomp.c++/task-5.C: New test.
1238 * testsuite/libgomp.c++/task-6.C: New test.
1239 * testsuite/libgomp.fortran/allocatable1.f90: New test.
1240 * testsuite/libgomp.fortran/allocatable2.f90: New test.
1241 * testsuite/libgomp.fortran/allocatable3.f90: New test.
1242 * testsuite/libgomp.fortran/allocatable4.f90: New test.
1243 * testsuite/libgomp.fortran/collapse1.f90: New test.
1244 * testsuite/libgomp.fortran/collapse2.f90: New test.
1245 * testsuite/libgomp.fortran/collapse3.f90: New test.
1246 * testsuite/libgomp.fortran/collapse4.f90: New test.
1247 * testsuite/libgomp.fortran/lastprivate1.f90: New test.
1248 * testsuite/libgomp.fortran/lastprivate2.f90: New test.
1249 * testsuite/libgomp.fortran/lib4.f90: New test.
1250 * testsuite/libgomp.fortran/lock-1.f90: New test.
1251 * testsuite/libgomp.fortran/lock-2.f90: New test.
1252 * testsuite/libgomp.fortran/nested1.f90: New test.
1253 * testsuite/libgomp.fortran/nestedfn4.f90: New test.
1254 * testsuite/libgomp.fortran/strassen.f90: New test.
1255 * testsuite/libgomp.fortran/tabs1.f90: New test.
1256 * testsuite/libgomp.fortran/tabs2.f: New test.
1257 * testsuite/libgomp.fortran/task1.f90: New test.
1258 * testsuite/libgomp.fortran/task2.f90: New test.
1259 * testsuite/libgomp.fortran/vla4.f90: Add dg-warning.
1260 * testsuite/libgomp.fortran/vla5.f90: Likewise.
1261 * testsuite/libgomp.c/pr26943-2.c: Likewise.
1262 * testsuite/libgomp.c/pr26943-3.c: Likewise.
1263 * testsuite/libgomp.c/pr26943-4.c: Likewise.
1264
7a0112e7
JJ
12652008-05-23 Jakub Jelinek <jakub@redhat.com>
1266
1267 PR c++/36308
1268 * testsuite/libgomp.c++/ctor-11.C: New test.
1269 * testsuite/libgomp.c++/ctor-12.C: New test.
1270
91a5b394
JJ
12712008-05-15 Janis Johnson <janis187@us.ibm.com>
1272
1273 * testsuite/lib/libgomp.exp: Load torture-options.exp from gcc lib.
1274
c18c98c0
JJ
12752008-05-07 Jakub Jelinek <jakub@redhat.com>
1276
1277 PR middle-end/36106
1278 * testsuite/libgomp.c/atomic-5.c: New test.
1279 * testsuite/libgomp.c/atomic-6.c: New test.
1280 * testsuite/libgomp.c/autopar-1.c: New test.
1281
6d26724a
RW
12822008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1283
1284 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
1285 (LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
1286 (LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
1287 (LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
1288 * configure: Regenerate.
1289 * Makefile.in, testsuite/Makefile.in: Likewise.
1290
deb984e6
PB
12912008-04-18 Paolo Bonzini <bonzini@gnu.org>
1292
1293 PR bootstrap/35457
1294 * aclocal.m4: Regenerate.
1295 * configure: Regenerate.
1296
9e775963
JJ
12972008-03-18 Jakub Jelinek <jakub@redhat.com>
1298
8119fc93
JJ
1299 PR middle-end/35611
1300 * testsuite/libgomp.c/atomic-4.c: New test.
1301
9e775963
JJ
1302 PR libgomp/35625
1303 * iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
1304 (gomp_iter_guided_next): Likewise.
1305 * testsuite/libgomp.c/pr35625.c: New test.
1306
38d24731
RW
13072008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1308
1309 * aclocal.m4: Regenerate.
1310 * configure: Likewise.
1311 * Makefile.in: Likewise.
1312 * testsuite/Makefile.in: Likewise.
1313
d0fb20be
JJ
13142008-03-13 Jakub Jelinek <jakub@redhat.com>
1315
1316 PR middle-end/35185
1317 * testsuite/libgomp.c++/pr35185.C: New test.
1318
7c8f7639
JJ
13192008-03-12 Jakub Jelinek <jakub@redhat.com>
1320
1321 PR middle-end/35549
1322 * testsuite/libgomp.c/pr35549.c: New test.
1323
251923f5
JJ
13242008-03-06 Jakub Jelinek <jakub@redhat.com>
1325
1326 * testsuite/libgomp.c/atomic-3.c: New test.
1327
f489fba1
FXC
13282008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1329
1330 PR fortran/33197
251923f5 1331 * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
f489fba1
FXC
1332 .F08 file suffixes.
1333
a1b25e49
PG
13342008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
1335
1336 PR libgomp/33131
1337 * configure.ac: Add ACX_HEADER_STRING.
1338 * env.c: Include strings.h.
1339 * aclocal.m4: Regenerate.
1340 * config.h.in: Regenerate.
1341 * configure: Regenerate.
1342 * Makefile.in: Regenerate.
1343 * testsuite/Makefile.in: Regenerate.
1344
6837b3b8
JJ
13452008-02-15 Jakub Jelinek <jakub@redhat.com>
1346
ac84c062
JJ
1347 PR middle-end/35196
1348 * testsuite/libgomp.c/pr35196.c: New test.
1349
6837b3b8
JJ
1350 PR middle-end/35130
1351 * testsuite/libgomp.fortran/pr35130.f90: New test.
1352 * testsuite/libgomp.c/pr35130.c: New test.
1353
c256730c
JJ
13542008-01-25 Jakub Jelinek <jakub@redhat.com>
1355
1356 PR middle-end/33880
1357 * testsuite/libgomp.c/pr33880.c: New test.
1358 * testsuite/libgomp.fortran/pr33880.f90: New test.
1359
c8e95542 13602008-01-24 David Edelsohn <edelsohn@gnu.org>
d653fdfb
DE
1361
1362 * configure: Regenerate.
1363
0f3e711e
JJ
13642008-01-08 Jakub Jelinek <jakub@redhat.com>
1365
1366 * configure.ac: Move futex checking into ../config/futex.m4.
1367 * configure: Rebuilt.
1368 * aclocal.m4: Rebuilt.
1369 * Makefile.in: Rebuilt.
1370
1371 * configure.tgt: Rename have_tls to gcc_cv_have_tls to match
1372 2007-10-15 ../config/tls.m4 change.
1373
5259c813
JJ
13742007-12-19 Jakub Jelinek <jakub@redhat.com>
1375
1376 PR c++/34513
1377 * testsuite/libgomp.c/pr34513.c: New test.
1378 * testsuite/libgomp.c++/pr34513.C: New test.
1379
ae8d8879
JH
13802007-12-17 Jack Howarth <howarth@bromo.med.uc.edu>
1381
1382 PR target/32765
1383 * testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.
1384
2b4cf991
JJ
13852007-12-04 Jakub Jelinek <jakub@redhat.com>
1386
1387 * omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
1388
d2dda7fe
JJ
13892007-12-03 Jakub Jelinek <jakub@redhat.com>
1390
1391 * testsuite/libgomp.c/private-1.c: New test.
1392
d683ec81
PB
13932007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
1394 Paolo Bonzini <bonzini@gnu.org>
1395
1396 * Makefile.am: Use space as vpath separator. Use 'vpath %'
1397 instead of 'VPATH ='.
1398 * Makefile.in: Regenerate.
1399
a7415017
MK
14002007-11-23 Matthias Klose <doko@ubuntu.com>
1401
1402 * configure.ac: Adjust makeinfo version check.
1403 * configure: Regenerate.
1404
78e47463
JJ
14052007-11-10 Jakub Jelinek <jakub@redhat.com>
1406
1407 PR fortran/34020
1408 * testsuite/libgomp.fortran/pr34020.f90: New test.
1409
239371f9
JJ
14102007-11-06 Jakub Jelinek <jakub@redhat.com>
1411
1412 PR c++/33894
1413 * testsuite/libgomp.c++/atomic-1.C: New test.
1414
98a5fa94
JJ
14152007-10-25 Jakub Jelinek <jakub@redhat.com>
1416
1417 PR libgomp/33275
1418 * testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
1419 Make x and y integers rather than (implicit) reals. Add private (j)
1420 clause to the last omp parallel.
1421
3afcaaf4
MR
14222007-10-15 Maciej W. Rozycki <macro@linux-mips.org>
1423
1424 * configure: Regenerate following changes to ../config/tls.m4.
1425
bd69daef
JJ
14262007-09-28 Jakub Jelinek <jakub@redhat.com>
1427
1428 * testsuite/libgomp.fortran/stack.f90: New test.
1429
1d0bd356
DS
14302007-09-10 Danny Smith <dannysmith@users.sourceforge.net>
1431
1432 * config/mingw32/proc.c: New file.
1433
b3172cab
UB
14342007-09-05 Uros Bizjak <ubizjak@gmail.com>
1435
1436 * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
1437 (main): Use __get_cpuid to get i386 target fetaures.
1438 * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
1439 (main): Use __get_cpuid to get x86_64 target fetaures.
1440
6da17392
JH
14412007-08-15 Jack Howarth <howarth@bromo.med.uc.edu>
1442
1443 PR target/32765
1444 * testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
1445 * testsuite/libgomp.fortran/crayptr2.f90: Likwise.
1446
e1c82219
JJ
14472007-07-12 Jakub Jelinek <jakub@redhat.com>
1448
1449 PR fortran/32550
1450 * testsuite/libgomp.fortran/pr32550.f90: New test.
1451 * testsuite/libgomp.fortran/crayptr2.f90: New test.
1452
12a27363
L
14532007-07-05 H.J. Lu <hongjiu.lu@intel.com>
1454
1455 * aclocal.m4: Regenerated.
1456
5349080d
TB
14572007-07-05 Tobias Burnus <burnus@net-b.de>
1458
1459 PR fortran/32359
1460 * testsuite/libgomp.fortran/pr32359.f90: New.
1461
4f9c450c
JJ
14622007-07-02 Jakub Jelinek <jakub@redhat.com>
1463
1464 PR libgomp/32468
1465 * sections.c (GOMP_parallel_sections_start): Only decrease
1466 number of threads to COUNT if dyn_var is true.
1467 * testsuite/libgomp.c/pr32468.c: New test.
1468
28c67ed7
RO
14692007-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1470
1471 PR libgomp/26308
1472 * config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
1473
64964499
JJ
14742007-06-21 Jakub Jelinek <jakub@redhat.com>
1475
1476 PR middle-end/32362
1477 * testsuite/libgomp.c/pr32362-1.c: New test.
1478 * testsuite/libgomp.c/pr32362-2.c: New test.
1479 * testsuite/libgomp.c/pr32362-3.c: New test.
1480
46d8fbd1
JJ
14812007-06-07 Jakub Jelinek <jakub@redhat.com>
1482
1483 * team.c (gomp_team_start): Fix setting up thread_attr
1484 stack size.
1485
82a6cadf
PB
14862007-06-02 Paolo Bonzini <bonzini@gnu.org>
1487
1488 * configure: Regenerate.
1489
1cf3d07d
SE
14902007-05-23 Steve Ellcey <sje@cup.hp.com>
1491
1492 * Makefile.in: Regenerate.
1493 * configure: Regenerate.
1494 * aclocal.m4: Regenerate.
1495 * testsuite/Makefile.in: Regenerate.
1496
12aac30b
JJ
14972007-05-04 Jakub Jelinek <jakub@redhat.com>
1498
1499 * config/linux/proc.c: New file.
1500
f1028b02
JJ
1501 PR libgomp/28482
1502 * configure.tgt: Don't link with -Wl,-z,nodlopen even on Linux.
1503
06785a48
DF
15042007-04-19 Daniel Franke <franke.daniel@gmail.com>
1505
1506 * libgomp.texi (GOMP_CPU_AFFINITY): Updated.
1507
b3b08ba0
MK
15082007-04-16 Matthias Klose <doko@debian.org>
1509
1510 * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
1511 flags if not building with -m64.
1512 * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
1513 flag for i?86-*-* targets, if current target matches -m64.
1514
6b2c5ce0
SE
15152007-04-14 Steve Ellcey <sje@cup.hp.com>
1516
1517 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.
1518 * Makefile.in: Regenerate.
1519
dd56fe7c
JDA
15202007-04-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1521
1522 PR testsuite/31369
1523 * testsuite/libgomp.c++/c++.exp: Don't use concat when setting
1524 ld_library_path.
1525 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1526
a0884cf0
JJ
15272007-04-04 Jakub Jelinek <jakub@redhat.com>
1528
1529 * libgomp.h (gomp_cpu_affinity, gomp_cpu_affinity_len): New extern
1530 decls.
1531 (gomp_init_affinity, gomp_init_thread_affinity): New prototypes.
1532 * env.c (gomp_cpu_affinity, gomp_cpu_affinity_len): New variables.
1533 (parse_affinity): New function.
1534 (initialize_env): Call it and gomp_init_affinity.
1535 * team.c (gomp_team_start): If gomp_cpu_affinity != NULL,
1536 create new pthread_attr_t and call gomp_init_thread_affinity
1537 on it for each thread before passing the attribute to pthread_create.
1538 * config/linux/affinity.c: New file.
1539 * config/posix/affinity.c: New file.
1540 * configure.ac (HAVE_PTHREAD_AFFINITY_NP): New test.
1541 * configure: Rebuilt.
1542 * config.h.in: Rebuilt.
1543 * Makefile.am (libgomp_la_SOURCES): Add affinity.c.
1544 * Makefile.in: Rebuilt.
1545
1850744b
AT
15462007-03-23 Andreas Tobler <a.tobler@schweiz.org>
1547
1548 * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
1549 *-*-darwin*.
1550 * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
1551 and use it if found.
1552
516f1ed8
UB
15532007-03-18 Uros Bizjak <ubizjak@gmail.com>
1554
1555 * testsuite/config/default.exp: New file.
1556 * testsuite/lib/libgomp.exp: New file.
1557 * testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
1558 libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
1559 load_lib *, load_gcc_lib *): Move to libgomp.exp.
1560 (libgomp_load): Remove.
1561 * testsuite/lib/libgomp.exp (libgomp_init): Compute
1562 always_ld_library_path, not ld_library_path. Set additional_flags
1563 to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
1564 (target_compile): Do not call libgomp_init. Append lang_library_path
1565 and lang_link_flags to options.
1566 * testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2. Set
1567 ld_library_path from always_ld_library_path. Set LD_LIBRARY_PATH
1568 here.
1569 * testsuite/libgomp.c++/c++.exp: Set ld_library_path from
1570 always_ld_library_path. Set LD_LIBRARY_PATH here.
1571 * testsuite/libgomp.fortran/fortran.exp: Ditto.
1572 * testsuite/libgomp.c/atomic-1.c: Set dg-options to
1573 "-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
1574 CX8 flag.
1575 * testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
1576 lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
1577 * testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
1578 * testsuite/libgomp.c/pr29947-1.c: Ditto.
1579 * testsuite/libgomp.c/atomic-10.c: Ditto.
1580
2ada56f5
JJ
15812007-03-21 Jakub Jelinek <jakub@redhat.com>
1582
1583 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
1584 dg-final cleanup-modules line.
1585 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
1586 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
1587 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
1588 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
1589 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
1590 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
1591 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
1592
f210f1cd
AS
15932007-03-18 Andreas Schwab <schwab@suse.de>
1594
1595 * acinclude.m4: Adjust regular expression for ld version
1596 extraction.
1597 * configure: Regenerate.
1598
c4dc950d
BM
15992007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
1600
1601 * Makefile.am: Add install-pdf target as copied from
1602 automake v1.10 rules.
1603 * Makefile.in: Regenerate
1604
e02a048f
JJ
16052007-02-07 Jakub Jelinek <jakub@redhat.com>
1606
78e075d4
JJ
1607 PR libgomp/28486
1608 * configure: Regenerate.
1609
e02a048f
JJ
1610 PR c++/30703
1611 * testsuite/libgomp.c++/pr30703.C: New test.
1612
60def7ed
JJ
16132007-02-02 Jakub Jelinek <jakub@redhat.com>
1614
1615 Revert:
1616 2006-07-05 Eric Christopher <echristo@apple.com>
1617 * configure.ac: Depend addition of -pthread on host OS.
1618 * configure: Regenerate.
1619
f1b0882e
RW
16202007-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1621
1622 * libgomp.texi: Fix spacing after abbreviations.
1623
748b9d7c
DF
16242007-01-31 Daniel Franke <franke.daniel@gmail.com>
1625
1626 PR libgomp/30546
1627 * configure.ac: Add check for makeinfo
1628 * Makefile.am: Redefined target libgomp.info, build libgomp.info only
1629 if an appropiate version of makeinfo is found.
1630 * aclocal.m4: Regenerated.
1631 * configure: Regenerated.
1632 * Makefile.in: Regenerated.
1633 * testsuite/Makefile.in: Regenerated.
1634
14734fc7
DF
16352007-01-29 Daniel Franke <franke.daniel@gmail.com>
1636
1637 PR libgomp/30540
1638 * libgomp.texi: More about implementation-dependent settings.
1639
7befd5d2
TB
16402007-01-26 Tobias Burnus <burnus@net-b.de>
1641
1642 * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
1643
4288fea2
JJ
16442007-01-24 Jakub Jelinek <jakub@redhat.com>
1645
1646 PR middle-end/30494
1647 * testsuite/libgomp.c/pr30494.c: New test.
1648
627ab4b8
TT
16492007-01-15 Tom Tromey <tromey@redhat.com>
1650
1651 * configure: Rebuilt.
1652 * configure.ac: Fixed comment.
1653
7c2b7f45
DF
16542007-01-14 Daniel Franke <franke.daniel@gmail.com>
1655
1656 * libgomp.texi: Document implementation specific default values of
1657 environment variables.
1658
3721b9e1
DF
16592006-12-21 Daniel Franke <franke.daniel@gmail.com>
1660
1661 PR libgomp/28209
1662 * libgomp.texi: New file.
1663 * configure.ac: Add --enable-generated-files-in-srcdir option.
1664 * Makefile.am: Add info, dvi, pdf, html targets. On request, copy
1665 files to srcdir.
1666 * Makefile.in: Regenerated.
1667 * config.h.in: Regenerated.
1668 * testsuite/Makefile.in: Regenerated.
1669 * NOTES: Removed.
1670
62bd6216
DF
16712006-12-04 Daniel Franke <franke.daniel@gmail.com>
1672
1673 PR libgomp/29949
1674 * env.c (omp_set_num_threads): Set illegal thread count to 1.
1675
aad741f4
EB
16762006-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
1677
1678 * configure: Regenerate.
1679
22568cc6
JJ
16802006-12-04 Jakub Jelinek <jakub@redhat.com>
1681
1682 PR libgomp/29947
1683 * loop.c (gomp_loop_init): Make parameters signed. Set ws->end to
1684 start if there shouldn't be any loop iterations.
1685 (gomp_loop_ordered_static_start): Remove start == end test.
1686 * testsuite/libgomp.c/pr29947-1.c: New test.
1687 * testsuite/libgomp.c/pr29947-2.c: New test.
1688
a9690009
EB
16892006-12-02 Eric Botcazou <ebotcazou@libertysurf.fr>
1690
1691 * configure.tgt: Force initial-exec TLS model on Linux only.
1692
597c25e6
DJ
16932006-11-13 Daniel Jacobowitz <dan@codesourcery.com>
1694
1695 * configure: Regenerated.
1696
6acf0b38
UB
16972006-11-09 Uros Bizjak <ubizjak@gmail.com>
1698
1699 * env.c (parse_schedule): Reject out of range values.
1700 (parse_unsigned_long): Reject out of range, negative or zero values.
1701
a7a53ca5
JJ
17022006-10-29 Jakub Jelinek <jakub@redhat.com>
1703
1704 PR fortran/29629
1705 * testsuite/libgomp.fortran/pr29629.f90: New test.
1706
6d4d216a
EB
17072006-10-24 Eric Botcazou <ebotcazou@libertysurf.fr>
1708
1709 PR libgomp/29494
1710 * configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
1711 * config/posix95: New directory.
1712 * config/posix95/omp-lock.h: New file.
1713 * config/posix95/lock.c: Likewise.
1714
5b043f08
GK
17152006-10-14 Geoffrey Keating <geoffk@apple.com>
1716
1717 * aclocal.m4: Regenerate.
1718 * configure: Regenerate.
1719
b50019f0
DS
17202006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
1721
1722 * testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
1723 '<' to '<='.
1724
8887708e
DS
17252006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
1726
1727 * acinclude.m4 (HAVE_ATTRIBUTE_ALIAS): Remove __USER_LABEL_PREFIX__ from
1728 test.
1729 * configure: Regenerate.
1730 * fortran.c (ialias_redirect): Add __USER_LABEL_PREFIX__ to alias.
1731
9b9e4cd6
JJ
17322006-09-26 Jakub Jelinek <jakub@redhat.com>
1733
a70ad3bb
JJ
1734 PR middle-end/25261
1735 PR middle-end/28790
1736 * testsuite/libgomp.c/nestedfn-4.c: New test.
1737 * testsuite/libgomp.c/nestedfn-5.c: New test.
1738 * testsuite/libgomp.fortran/nestedfn3.f90: New test.
1739
9b9e4cd6
JJ
1740 PR fortran/29097
1741 * testsuite/libgomp.fortran/condinc1.f: New test.
1742 * testsuite/libgomp.fortran/condinc2.f: New test.
1743 * testsuite/libgomp.fortran/condinc3.f90: New test.
1744 * testsuite/libgomp.fortran/condinc4.f90: New test.
1745 * testsuite/libgomp.fortran/condinc1.inc: New file.
1746
2fb31455
TT
17472006-09-18 Tom Tromey <tromey@redhat.com>
1748
1749 * configure: Rebuilt.
1750
c663e301
JM
17512006-09-13 Joseph S. Myers <joseph@codesourcery.com>
1752
1753 PR c/28768
1754 PR preprocessor/14634
1755 * configure.ac (HAVE_CLOCK_GETTIME): Add missing second argument
1756 to AC_DEFINE.
1757 * configure: Regenerate.
1758
38371be9
SK
17592006-09-08 Steven G. Kargl <kargl@gcc.gnu.org>
1760
1761 * testsuite/libgomp.fortran/reduction3.f90: Change
1762 -2147483648 to -huge(i)-1 to avoid overflow.
1763 * testsuite/libgomp.fortran/reduction4.f90: Change
1764 Z'ffffffff' to not(0) to avoid overflow.
1765
571d5ac5
JM
17662006-08-26 Joseph S. Myers <joseph@codesourcery.com>
1767
1768 PR libgomp/25938
1769 * Makefile.am (libsubincludedir): New.
1770 (nodist_include_HEADERS): Rename to nodist_libsubinclude_HEADERS.
1771 * Makefile.in: Regenerate.
1772
89b3e3cd
JJ
17732006-08-17 Jakub Jelinek <jakub@redhat.com>
1774
1775 PR libgomp/28725
1776 * env.c: Include ctype.h.
1777 (parse_schedule, parse_unsigned_long, parse_boolean): Allow
1778 leading and/or trailing whitespace and compare strings case
1779 insensitively.
1780
742fae05
JJ
17812006-07-16 Jakub Jelinek <jakub@redhat.com>
1782
1783 PR fortran/28390
1784 * testsuite/libgomp.fortran/pr28390.f: New test.
1785
a1daed2d
EC
17862006-07-05 Eric Christopher <echristo@apple.com>
1787
1788 * configure.ac: Depend addition of -pthread on host OS.
1789 * configure: Regenerate.
1790
5d7b5199
JJ
17912006-06-21 Jakub Jelinek <jakub@redhat.com>
1792
1793 * critical.c (GOMP_critical_name_start): Fix *pptr initialization
1794 when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
1795 defined.
1796
fe5568e9
JJ
17972006-06-20 Jakub Jelinek <jakub@redhat.com>
1798
1799 PR libgomp/26175
1800 PR libgomp/26477
1801 * configure.ac: If neither --enable-linux-futex nor
1802 --disable-linux-futex is passed, determine the default by checking
1803 for compiling and/or running against NPTL. With --enable-linux-futex,
1804 check if SYS_gettid and SYS_futex are defined.
1805 * configure: Rebuilt.
1806
c3b11a40
RH
18072006-06-14 Richard Henderson <rth@redhat.com>
1808
1809 PR libgomp/28008
1810 * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
1811 undefined. Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
1812
d0d1b24d
RH
18132006-06-09 Richard Henderson <rth@redhat.com>
1814
1815 * env.c (gomp_nthreads_var): Change to unsigned long.
1816 (gomp_run_sched_chunk): Likewise.
1817 (parse_unsigned_long): Rename from parse_num_threads and generalize.
1818 (initialize_env): Initialize gomp_thread_attr.
1819 * libgomp.h (gomp_nthreads_var): Update decl.
1820 (gomp_run_sched_chunk): Likewise.
1821 (gomp_thread_attr): Declare.
1822 * team.c (gomp_thread_attr): Export.
1823 (initialize_team): Don't initialize it.
1824
cd75853e
JJ
18252006-06-09 Jakub Jelinek <jakub@redhat.com>
1826
1827 PR fortran/27916
1828 * testsuite/libgomp.fortran/pr27916-1.f90: New test.
1829 * testsuite/libgomp.fortran/pr27916-2.f90: New test.
1830
33815e0c
FXC
18312006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1832
1833 * config/mingw32/time.c: New file.
1834 * configure.tgt: Use it.
1835
6667de0d
CD
18362006-05-23 Carlos O'Donell <carlos@codesourcery.com>
1837
1838 * Makefile.am: Add install-html target. Add install-html to .PHONY
1839 * Makefile.in: Regenerate.
1840
e962c46b
JDA
18412006-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1842
1843 PR libgomp/27612
1844 * testsuite/libgomp.c/sections-1.c: Require sync_int_long.
1845 * testsuite/libgomp.c/critical-1.c: Likewise.
1846 * testsuite/libgomp.c/loop-1.c: Likewise.
1847 * testsuite/libgomp.c/loop-2.c: Likewise.
1848 * testsuite/libgomp.c/single-1.c: Likewise.
1849 * testsuite/libgomp.c/ordered-1.c: Likewise.
1850 * testsuite/libgomp.c/ordered-2.c: Likewise.
1851
eeb1d9e0
JJ
18522006-05-15 Jakub Jelinek <jakub@redhat.com>
1853
1854 PR middle-end/27416
1855 * libgomp.fortran/pr27416-1.f90: New test.
1856
693d710f
JJ
18572006-05-03 Jakub Jelinek <jakub@redhat.com>
1858
1859 PR fortran/27395
1860 * testsuite/libgomp.fortran/pr27395-1.f90: New test.
1861 * testsuite/libgomp.fortran/pr27395-2.f90: New test.
1862
8ca5b2a2
JJ
18632006-05-02 Jakub Jelinek <jakub@redhat.com>
1864
1865 PR c++/26943
1866 * testsuite/libgomp.c/pr26943-1.c: New test.
1867 * testsuite/libgomp.c/pr26943-2.c: New test.
1868 * testsuite/libgomp.c/pr26943-3.c: New test.
1869 * testsuite/libgomp.c/pr26943-4.c: New test.
1870 * testsuite/libgomp.c++/pr27337.C: Remove barrier.
1871 * testsuite/libgomp.c++/pr26943.C: New test.
1872
077b0dfb
JJ
18732006-05-02 Jakub Jelinek <jakub@redhat.com>
1874
1875 PR middle-end/27337
1876 * testsuite/libgomp.c++/pr27337.C: New test.
1877
91b6c26d
JJ
18782006-04-26 Jakub Jelinek <jakub@redhat.com>
1879
1880 PR c/26171
1881 * testsuite/libgomp.c/pr26171.c: New test.
1882
60e1758f
RH
18832006-04-25 Richard Henderson <rth@redhat.com>
1884
1885 PR libgomp/25865
1886 * configure.ac: Use GCC_CHECK_TLS.
1887 * acinclude.m4 (LIBGOMP_CHECK_TLS): Remove.
1888 * Makefile.in, aclocal.m4, configure: Regenerate.
1889
615baed7
MK
18902006-04-10 Matthias Klose <doko@debian.org>
1891
1892 * testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
1893 directory names containing underscores.
1894
fae2b46b
JJ
18952006-03-21 Jakub Jelinek <jakub@redhat.com>
1896
1897 PR c++/26691
1898 * testsuite/libgomp.c++/pr26691.C: New test.
1899
11a5f608
JJ
19002006-03-13 Jakub Jelinek <jakub@redhat.com>
1901
1902 * testsuite/libgomp.fortran/retval2.f90: New test.
1903
1799e5d5
RH
19042006-03-09 Diego Novillo <dnovillo@redhat.com>
1905
1906 * testsuite/libgomp.c++: New directory.
1907
d349482e
AT
19082006-02-25 Shantonu Sen <ssen@opendarwin.org>
1909
1910 * config/posix/sem.h: Define BROKEN_POSIX_SEMAPHORES functions.
1911 * config/posix/sem.c: Implement the above.
1912
19132006-02-25 Andreas Tobler <a.tobler@schweiz.ch>
1914
1915 * configure.ac (HAVE_BROKEN_POSIX_SEMAPHORES): Check for darwin and
1916 define HAVE_BROKEN_POSIX_SEMAPHORES.
1917 * configure: Rebuilt.
1918 * config.h.in: Rebuilt.
1919
124452c9
FXC
19202006-02-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1921
1922 PR bootstrap/26161
1923 * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment
1924 for the other pthread check.
1925 * configure: Regenerate.
1926 * config.h.in: Regenerate.
1927
dd8d6dfe
JJ
19282006-02-15 Jakub Jelinek <jakub@redhat.com>
1929
1930 PR libgomp/25938
1931 PR libgomp/25984
1932 * Makefile.am (fincludedir): New variable.
1933 (nodist_include_HEADERS): Remove Fortran files.
1934 (nodist_finclude_HEADERS): New variable.
1935 * Makefile.in: Regenerated.
1936
6c7a4dfd
JJ
19372006-02-13 Jakub Jelinek <jakub@redhat.com>
1938
1939 * testsuite/libgomp.fortran/vla7.f90: Add -w to options.
1940 Remove tests for returning assumed character length arrays.
1941
5142e08b
RS
19422006-02-12 Roger Sayle <roger@eyesopen.com>
1943 John David Anglin <dave@hiauly1.hia.nrc.ca>
1944
1945 PR libgomp/25936
1946 * configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.
a1daed2d 1947
5821fba8
UW
19482006-02-08 Ulrich Weigand <uweigand@de.ibm.com>
1949
1950 * testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
1951
cb2bbc67
EB
19522006-02-07 Eric Botcazou <ebotcazou@libertysurf.fr>
1953
1954 * testsuite/lib/libgomp-dg.exp (libgomp_init): Compute multilib related
1955 part of LD_LIBRARY_PATH manually.
1956
f05ee80c
L
19572006-02-03 H.J. Lu <hongjiu.lu@intel.com>
1958
1959 PR libgomp/25852
1960 * testsuite/lib/libgomp-dg.exp (blddir): Set it in
1961 libgomp_init.
1962
03b8fe49
PB
19632005-01-25 Paolo Bonzini <bonzini@gnu.org>
1964
1965 PR libgomp/25884
f05ee80c
L
1966 * Makefile.am (omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Remove.
1967 * configure.ac (PERL): Don't set.
1968 (gstdint.h, omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Create here.
1969 (OMP_LOCK_SIZE, OMP_LOCK_ALIGN, OMP_LOCK_KIND, OMP_NEST_LOCK_SIZE,
1970 OMP_NEST_LOCK_ALIGN, OMP_NEST_LOCK_KIND): New substitutions.
1971 * omp.h.in: Wrap the new configure substitutions with @ characters.
1972 * omp_lib.h.in, omp_lib.f90.in, libgomp_f.h.in: Likewise.
1973 * aclocal.m4, configure, Makefile.in: Regenerate.
1974 * mkomp_h.pl: Delete.
03b8fe49 1975
18cbfd85
PB
19762005-01-24 Paolo Bonzini <bonzini@gnu.org>
1977
1978 PR libgomp/25259
1979 * configure.ac: Use GCC_HEADER_STDINT.
1980 * libgomp.h: Include gstdint.h.
1981 * libgomp_f.h.in: Don't include stdint.h or inttypes.h.
1982 * configure, Makefile.in, testsuite/Makefile.in, aclocal.m4: Rebuild.
1983
c41303c6
RH
19842006-01-24 Richard Henderson <rth@redhat.com>
1985
1986 PR libgomp/25942
1987 * configure.ac: Add AM_MAINTAINER_MODE.
1988 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in: Rebuild.
1989
149b9553
DN
19902006-01-24 Diego Novillo <dnovillo@redhat.com>
1991
1992 * Makefile.in: Regenerate.
1993 * testsuite/Makefile.in: Regenerate.
1994 * aclocal.m4: Regenerate.
1995
192a50ad
AT
19962006-01-23 Andreas Tobler <a.tobler@schweiz.ch>
1997
1998 * config/posix/proc.c: Conditional include of sys/loadavg.h for
1999 Solaris.
2000 * configure.ac: Add check for loadavg.h.
2001 (link_gomp): Adjust comment.
2002 * configure: Regenerate.
2003 * config.h.in: Regenerate.
2004
a55b8e18
SE
20052006-01-21 Steve Ellcey <sje@cup.hp.com>
2006
2007 PR libgomp/25877
2008 * configure.ac: Remove check for alloca.h.
2009 * configure: Regenerate.
2010 * config.h.in: Regenerate.
2011 * libgomp.h: define gomp_alloca to be __builtin_alloca.
2012 * team.c: Remove use of alloca.h.
2013 Call gomp_alloca instead of alloca.
2014
692eeb34
SE
20152006-01-20 Steve Ellcey <sje@cup.hp.com>
2016
2017 PR libgomp/25877
2018 * team.c: Add include of alloca.h.
2019 * configure.ac: Add check for alloca.h.
2020 * configure: Regenerate.
2021 * config.h.in: Regenerate.
2022
953ff289
DN
20232006-01-17 Jakub Jelinek <jakub@redhat.com>
2024
2025 PR fortran/25219
2026 * testsuite/libgomp.fortran/pr25219.f90: New test.
2027
20282005-12-05 Uros Bizjak <uros@kss-loka.si>
2029
2030 * testsuite/libgomp.c/pr24455.c, testsuite/libgomp.c/copyin-1.c,
2031 testsuite/libgomp.c/copyin-2.c, testsuite/libgomp.c/copyin-3.c,
2032 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
2033 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
2034 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455.C,
2035 testsuite/libgomp.fortran/threadprivate1.f90,
2036 testsuite/libgomp.fortran/threadprivate2.f90,
2037 testsuite/libgomp.fortran/threadprivate3.f90,
2038 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
2039 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
2040 testsuite/libgomp.fortran/omp_parse3.f90: Change required
2041 effective-target to TLS runtime.
2042
2043 * testsuite/libgomp.fortran/pr25162.f: Require
2044 effective-target TLS runtime.
2045
20462005-12-01 Jakub Jelinek <jakub@redhat.com>
2047
2048 * testsuite/libgomp.fortran/nestedfn2.f90: New test.
2049 * testsuite/libgomp.c/nestedfn-3.c: New test.
2050
20512005-11-30 Jakub Jelinek <jakub@redhat.com>
2052
2053 PR fortran/25162
2054 * testsuite/libgomp.fortran/pr25162.f: New test.
2055
20562005-11-28 Jakub Jelinek <jakub@redhat.com>
2057
2058 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Fall back to
2059 CLOCK_REALTIME if clock_* (CLOCK_MONOTONIC, &ts) call failed.
2060
20612005-11-25 Jakub Jelinek <jakub@redhat.com>
2062
2063 * alloc.c, barrier.c, critical.c, env.c, error.c, fortran.c, iter.c,
2064 libgomp.h, libgomp_f.h.in, libgomp_g.h, loop.c, mkomp_h.pl, omp.h.in,
2065 omp_lib.f90.in, omp_lib.h.in, ordered.c, parallel.c, sections.c,
2066 single.c, team.c, work.c, config/linux/alpha/futex.h,
2067 config/linux/bar.c, config/linux/bar.h, config/linux/ia64/futex.h,
2068 config/linux/lock.c, config/linux/mutex.c, config/linux/mutex.h,
2069 config/linux/powerpc/futex.h, config/linux/s390/futex.h,
2070 config/linux/sem.c, config/linux/sem.h, config/linux/sparc/futex.h,
2071 config/linux/x86/futex.h, config/posix/bar.c, config/posix/bar.h,
2072 config/posix/lock.c, config/posix/mutex.h, config/posix/proc.c,
2073 config/posix/sem.c, config/posix/sem.h, config/posix/time.c: Update
2074 FSF address.
2075
20762005-11-18 Jakub Jelinek <jakub@redhat.com>
2077
2078 * Makefile.am: Move libgomp_f.h from nodist_include_HEADERS
2079 to nodist_noinst_HEADERS.
2080 * Makefile.in: Rebuilt.
2081
2082 * config/posix/omp-lock.h (omp_nest_lock_t): Change into struct,
2083 add integer count field.
2084 * config/posix/lock.c (omp_destroy_nest_lock): Adjust for
2085 omp_nest_lock_t type change.
2086 (omp_init_nest_lock): Likewise. Initialize count to 0.
2087 (omp_set_nest_lock): Adjust for omp_nest_lock_t type change.
2088 Increment count.
2089 (omp_unset_nest_lock): Adjust for omp_nest_lock_t type change.
2090 Decrement count.
2091 (omp_test_nest_lock): Adjust for omp_nest_lock_t type change.
2092 Increment count if successful and return the new nesting level.
2093 * config/linux/lock.c (omp_test_nest_lock): Return new nesting level.
2094 * omp_lib.f90.in (omp_test_lock): Fix LOCK argument type.
2095 * testsuite/libgomp.c/lib-1.c: New test.
2096 * testsuite/libgomp.fortran/lib1.f90: New test.
2097 * testsuite/libgomp.fortran/lib2.f: New test.
2098 * testsuite/libgomp.fortran/lib3.f: New test.
2099
21002005-11-17 Richard Henderson <rth@redhat.com>
2101
2102 PR 24845
2103 * Makefile.am (nodist_toolexeclib_HEADERS): New.
2104 * configure.ac (link_gomp): New. Substitute it.
2105 (AC_CONFIG_FILES): Add libgomp.spec.
2106 * libgomp.spec.in: New file.
2107 * Makefile.in, testsuite/Makefile.in, configure: Rebuild.
2108 * testsuite/lib/libgomp-dg.exp: Add -B${blddir}/ to flags.
2109
21102005-11-18 Jakub Jelinek <jakub@redhat.com>
2111
2112 * testsuite/libgomp.fortran/reduction1.f90: Adjust for
2113 reduction(-:var) behaving the same as reduction(+:var).
2114 * testsuite/libgomp.c/reduction-4.c: New test.
2115
21162005-11-15 Uros Bizjak <uros@kss-loka.si>
2117
2118 * testsuite/libgomp.c/pr24455-1.c, testsuite/libgomp.c/pr24455.c,
2119 testsuite/libgomp.c/copyin-1.c, testsuite/libgomp.c/copyin-2.c,
2120 testsuite/libgomp.c/copyin-3.c,
2121 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
2122 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
2123 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455-1.C,
2124 testsuite/libgomp.c++/pr24455.C,
2125 testsuite/libgomp.fortran/threadprivate1.f90,
2126 testsuite/libgomp.fortran/threadprivate2.f90,
2127 testsuite/libgomp.fortran/threadprivate3.f90,
2128 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
2129 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
2130 testsuite/libgomp.fortran/omp_parse3.f90: Require
2131 effective-target TLS.
2132
21332005-11-14 Diego Novillo <dnovillo@redhat.com>
2134
2135 * HEADER: Remove.
2136
21372005-11-13 Jakub Jelinek <jakub@redhat.com>
2138
2139 PR libgomp/24797
2140 * team.c (initialize_team): Pass NULL rather than free as
2141 pthread_key_create destructor. Initialize thread specific data
2142 pointer in initial thread to a static local variable rather than
2143 malloced memory.
2144
21452005-11-11 Uros Bizjak <uros@kss-loka.si>
2146
2147 * testsuite/lib/libgomp-dg.exp: Locate libgcc.a and append
2148 its location to ld_library_path.
2149
21502005-11-10 Diego Novillo <dnovillo@redhat.com>
2151
2152 * testsuite/libgomp.c/c.exp: Rename from dg.exp.
2153
21542005-11-10 Diego Novillo <dnovillo@redhat.com>
2155
2156 * testsuite/libgomp.c: Rename from libgomp.dg.
2157
21582005-11-09 Diego Novillo <dnovillo@redhat.com>
2159
2160 * testsuite/libgomp.c++/pr24455.C: Add copyin clause for
2161 threadprivate variable 'i'.
2162
21632005-11-09 Jakub Jelinek <jakub@redhat.com>
2164
2165 * config/linux/s390/futex.h: New file.
2166 * configure.tgt: Use it.
2167
2168 * testsuite/libgomp.fortran/omp_parse4.f90: Move n initialization
2169 before the parallel.
2170
21712005-11-08 Jakub Jelinek <jakub@redhat.com>
2172
2173 PR c++/24734
2174 * testsuite/libgomp.c++/master-1.C: New test.
2175
21762005-11-07 Jakub Jelinek <jakub@redhat.com>
2177
2178 * testsuite/libgomp.dg/copyin-3.c: New test.
2179
21802005-11-07 Jakub Jelinek <jakub@redhat.com>
2181
2182 * testsuite/libgomp.fortran/retval1.f90: New test.
2183 * testsuite/libgomp.fortran/vla7.f90: New test.
2184
21852005-11-06 Jakub Jelinek <jakub@redhat.com>
2186
2187 * testsuite/libgomp.fortran/vla2.f90: New test.
2188 * testsuite/libgomp.fortran/vla3.f90: New test.
2189 * testsuite/libgomp.fortran/vla4.f90: New test.
2190 * testsuite/libgomp.fortran/vla5.f90: New test.
2191 * testsuite/libgomp.fortran/vla6.f90: New test.
2192
21932005-11-01 Jakub Jelinek <jakub@redhat.com>
2194
2195 * config/linux/sparc/futex.h: New file.
2196 * configure.tgt: Use it.
2197 * testsuite/lib/libgomp-dg.exp: Use -mcpu=v9 for sparc testing.
2198
2199 * critical.c: Include stdlib.h.
2200 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Avoid warnings about
2201 ignoring return value.
2202 * configure.ac: Don't put -Wc,-pthread into XCFLAGS until after
2203 LIBGOMP_CHECK_SYNC_BUILTINS check.
2204 * configure: Rebuilt.
2205
22062005-10-31 Jakub Jelinek <jakub@redhat.com>
2207
2208 * testsuite/libgomp.fortran/vla1.f90: New test.
2209
22102005-10-31 Richard Henderson <rth@redhat.com>
2211
2212 * testsuite/libgomp.fortran/character2.f90: Fix race condition
2213 setting 's' in different threads.
2214
22152005-10-31 Jakub Jelinek <jakub@redhat.com>
2216
2217 * libgomp.h (attribute_hidden, ialias): Define.
2218 * config/posix/proc.c (omp_get_num_procs): Add ialias.
2219 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Likewise.
2220 * config/posix/lock.c (omp_init_lock, omp_init_nest_lock,
2221 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
2222 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
2223 omp_test_lock, omp_test_nest_lock): Likewise.
2224 * config/linux/lock.c (omp_init_lock, omp_init_nest_lock,
2225 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
2226 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
2227 omp_test_lock, omp_test_nest_lock): Likewise.
2228 * env.c (omp_set_dynamic, omp_set_nested, omp_set_num_threads,
2229 omp_get_dynamic, omp_get_nested): Likewise.
2230 * parallel.c (omp_get_num_threads, omp_get_max_threads,
2231 omp_get_thread_num, omp_in_parallel): Likewise.
2232 * fortran.c (ialias_redirect): Define.
2233 (omp_init_lock, omp_init_nest_lock, omp_destroy_lock,
2234 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock,
2235 omp_unset_lock, omp_unset_nest_lock, omp_test_lock,
2236 omp_test_nest_lock, omp_set_dynamic, omp_set_nested,
2237 omp_set_num_threads, omp_get_dynamic, omp_get_nested,
2238 omp_in_parallel, omp_get_max_threads, omp_get_num_procs,
2239 omp_get_num_threads, omp_get_thread_num, omp_get_wtick,
2240 omp_get_wtime): Add ialias_redirect.
2241
22422005-10-30 Jakub Jelinek <jakub@redhat.com>
2243
2244 * fortran.c: Include stdlib.h.
2245
22462005-10-29 Jakub Jelinek <jakub@redhat.com>
2247
2248 * Makefile.am (env.o, env.lo): Depend on libgomp_f.h.
2249 * Makefile.in: Regenerated.
2250
22512005-10-28 Jakub Jelinek <jakub@redhat.com>
2252
2253 * mkomp_h.pl: Remove all -Wc, option prefixes in $COMPILE.
2254 * libgomp_f.h.in (omp_check_defines): New function.
2255 * env.c: Include libgomp_f.h.
2256 (initialize_env): Call omp_check_defines.
2257
2258 * testsuite/libgomp.dg/copyin-2.c: New test.
2259 * testsuite/libgomp.c++/copyin-2.C: New test.
2260 * testsuite/libgomp.fortran/threadprivate3.f90: New test.
2261
2262 * testsuite/libgomp.fortran/threadprivate2.f90: New test.
2263 * testsuite/libgomp.fortran/sharing2.f90: New test.
2264
2265 * testsuite/libgomp.dg/copyin-1.c: New test.
2266 * testsuite/libgomp.c++/copyin-1.C: New test.
2267
22682005-10-26 Jakub Jelinek <jakub@redhat.com>
2269
2270 * testsuite/libgomp.fortran/crayptr1.f90: New test.
2271
2272 * testsuite/libgomp.fortran/workshare1.f90: New test.
2273
2274 * libgomp.fortran/appendix-a/a.28.5.f90: Change into compile
2275 only test.
2276 * libgomp.fortran/sharing1.f90: New test.
2277
22782005-10-24 Jakub Jelinek <jakub@redhat.com>
2279
2280 PR c++/24502
2281 * testsuite/libgomp.c++/loop-7.C: New test.
2282
2283 * testsuite/libgomp.dg/nestedfn-2.c: New test.
2284
2285 * testsuite/libgomp.dg/nestedfn-1.c: New test.
2286 * testsuite/libgomp.fortran/reduction6.f90: New test.
2287 * testsuite/libgomp.fortran/nestedfn1.f90: New test.
2288
22892005-10-23 Richard Henderson <rth@redhat.com>
2290
2291 * testsuite/libgomp.c++/ctor-1.C: New.
2292 * testsuite/libgomp.c++/ctor-2.C: New.
2293 * testsuite/libgomp.c++/ctor-3.C: New.
2294 * testsuite/libgomp.c++/ctor-4.C: New.
2295 * testsuite/libgomp.c++/ctor-5.C: New.
2296 * testsuite/libgomp.c++/ctor-6.C: New.
2297 * testsuite/libgomp.c++/ctor-7.C: New.
2298 * testsuite/libgomp.c++/ctor-8.C: New.
2299 * testsuite/libgomp.c++/ctor-9.C: New.
2300
23012005-10-21 Diego Novillo <dnovillo@redhat.com>
2302
2303 PR 24455
2304 * testsuite/libgomp.c++/pr24455-1.C: New test.
2305 * testsuite/libgomp.c++/pr24455.C: New test.
2306 * testsuite/libgomp.dg/pr24455-1.c: New test.
2307 * testsuite/libgomp.dg/pr24455.c: New test.
2308
23092005-10-20 Richard Henderson <rth@redhat.com>
2310
2311 * testsuite/libgomp.c++/loop-6.C: New.
2312 * testsuite/libgomp.dg/loop-3.c: New.
2313
23142005-10-20 Jakub Jelinek <jakub@redhat.com>
2315
2316 * testsuite/libgomp.fortran/jacobi.f: Don't make i and j
2317 explicitly private.
2318 * testsuite/libgomp.fortran/omp_parse1.f90 (test_do): Make i
2319 explicitly shared.
2320
23212005-10-19 Diego Novillo <dnovillo@redhat.com>
2322
2323 * testsuite/libgomp.fortran/jacobi.f: New test.
2324
23252005-10-19 Richard Henderson <rth@redhat.com>
2326
2327 * configure.tgt (i?86-linux): Default to with_arch instead of
2328 CFLAGS. Add -mtune to match target_cpu.
2329 (x86_64-linux): Tune to i686.
2330
2331 * fortran.c (omp_test_nest_lock_): Fix typo.
2332
23332005-10-19 Jakub Jelinek <jakub@redhat.com>
2334
2335 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
2336 gomp_ordered_sync): Do nothing if team->nthreads == 1.
2337 * testsuite/libgomp.dg/ordered-3.c: New test.
2338
2339 * testsuite/libgomp.dg/appendix-a/a.18.1.c: Remove unconditional abort.
2340 Remove volatile keyword.
2341
2342 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Reorder variables
2343 in COMMON block to avoid warnings on 64-bit targets.
2344
23452005-10-18 Diego Novillo <dnovillo@redhat.com>
2346
2347 * testsuite/libgomp.dg/shared-3.c: New test.
2348
23492005-10-18 Jakub Jelinek <jakub@redhat.com>
2350
2351 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: Removed.
2352 * testsuite/libgomp.fortran/reduction5.f90: New test.
2353
23542005-10-18 Jakub Jelinek <jakub@redhat.com>
2355
2356 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Add -ffixed-form to
2357 dg-options.
2358 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise. Enable
2359 flush loop now that __sync_synchronize has proper memory barrier.
2360 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: Fix a typo.
2361 Add -ffixed-form to dg-options.
2362
23632005-10-17 Diego Novillo <dnovillo@redhat.com>
2364
2365 * testsuite/libgomp.fortran/fortran.exp: Also gather tests
2366 from subdirectories.
2367 * testsuite/libgomp.fortran/appendix-a/a.15.1.f90: New test.
2368 * testsuite/libgomp.fortran/appendix-a/a.16.1.f90: New test.
2369 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: New test.
2370 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: New test.
2371 * testsuite/libgomp.fortran/appendix-a/a.2.1.f90: New test.
2372 * testsuite/libgomp.fortran/appendix-a/a.21.1.f90: New test.
2373 * testsuite/libgomp.fortran/appendix-a/a.22.7.f90: New test.
2374 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: New test.
2375 * testsuite/libgomp.fortran/appendix-a/a.26.1.f90: New test.
2376 * testsuite/libgomp.fortran/appendix-a/a.28.1.f90: New test.
2377 * testsuite/libgomp.fortran/appendix-a/a.28.2.f90: New test.
2378 * testsuite/libgomp.fortran/appendix-a/a.28.3.f90: New test.
2379 * testsuite/libgomp.fortran/appendix-a/a.28.4.f90: New test.
2380 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: New test.
2381 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: New test.
2382 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: New test.
2383 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: New test.
2384 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: New test.
2385 * testsuite/libgomp.fortran/appendix-a/a.33.3.f90: New test.
2386 * testsuite/libgomp.fortran/appendix-a/a.38.1.f90: New test.
2387 * testsuite/libgomp.fortran/appendix-a/a.39.1.f90: New test.
2388 * testsuite/libgomp.fortran/appendix-a/a.4.1.f90: New test.
2389 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: New test.
2390 * testsuite/libgomp.fortran/appendix-a/a.5.1.f90: New test.
2391 * testsuite/libgomp.fortran/appendix-a/a10.1.f90: New test.
2392
23932005-10-17 Jakub Jelinek <jakub@redhat.com>
2394
2395 * testsuite/libgomp.dg/dg.exp: Only unset lang_* if
2396 lang_library_path exists. Use find instead of glob to gather tests.
2397 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: Removed.
2398
23992005-10-17 Diego Novillo <dnovillo@redhat.com>
2400
2401 * testsuite/libgomp.dg/appendix-a/a.15.1.c: New test.
2402 * testsuite/libgomp.dg/appendix-a/a.16.1.c: New test.
2403 * testsuite/libgomp.dg/appendix-a/a.18.1.c: New test.
2404 * testsuite/libgomp.dg/appendix-a/a.19.1.c: New test.
2405 * testsuite/libgomp.dg/appendix-a/a.2.1.c: New test.
2406 * testsuite/libgomp.dg/appendix-a/a.21.1.c: New test.
2407 * testsuite/libgomp.dg/appendix-a/a.26.1.c: New test.
2408 * testsuite/libgomp.dg/appendix-a/a.29.1.c: New test.
2409 * testsuite/libgomp.dg/appendix-a/a.3.1.c: New test.
2410 * testsuite/libgomp.dg/appendix-a/a.39.1.c: New test.
2411 * testsuite/libgomp.dg/appendix-a/a.4.1.c: New test.
2412 * testsuite/libgomp.dg/appendix-a/a.5.1.c: New test.
2413 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: New file.
2414
24152005-10-15 Jakub Jelinek <jakub@redhat.com>
2416
2417 * testsuite/libgomp.dg/vla-1.c: New test.
2418
2419 * testsuite/libgomp.fortran/reference2.f90: New test.
2420
2421 * testsuite/libgomp.fortran/character2.f90: Remove explicit
2422 declaration of omp_get_thread_num.
2423 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise. Add
2424 use omp_lib.
2425
2426 * testsuite/libgomp.fortran/reduction1.f90: New test.
2427 * testsuite/libgomp.fortran/reduction2.f90: New test.
2428 * testsuite/libgomp.fortran/reduction3.f90: New test.
2429 * testsuite/libgomp.fortran/reduction4.f90: New test.
2430
24312005-10-13 Richard Henderson <rth@redhat.com>
2432
2433 * Makefile.am (libgomp_la_SOURCES): Add bar.c.
2434 * Makefile.in: Regenerate.
2435 * barrier.c (GOMP_barrier): Use gomp_barrier_wait.
2436 * libgomp.h: Include bar.h.
2437 (struct gomp_barrier): Remove.
2438 (struct gomp_team): Add barrier. Replace master_barrier with
2439 master_release. Replace threads with ordered_release.
2440 (struct gomp_thread): Replace barrier with release.
2441 * ordered.c (gomp_ordered_first): Update for ordered_release change.
2442 (gomp_ordered_last, gomp_ordered_next, gomp_ordered_static_init,
2443 gomp_ordered_static_next, gomp_ordered_sync): Likewise.
2444 * single.c (GOMP_single_copy_start): Use gomp_barrier_wait.
2445 (GOMP_single_copy_end): Likewise.
2446 * team.c (gomp_threads_dock): New.
2447 (gomp_barrier_init, gomp_barrier_destroy): Remove.
2448 (gomp_thread_start): Use gomp_barrier_wait.
2449 (new_team, free_team): Update for gomp_team changes.
2450 (gomp_team_start): Use gomp_barrier_wait and gomp_barrier_reinit.
2451 (gomp_team_end): Use gomp_barrier_wait.
2452 (initialize_team): Update for gomp_thread changes.
2453 * work.c (gomp_work_share_end): Use gomp_barrier_wait_start.
2454 (gomp_work_share_end_nowait): Use atomic ops when available.
2455 * config/linux/bar.c, config/linux/bar.h: New files.
2456 * config/posix/bar.c, config/posix/bar.h: New files.
2457
24582005-10-13 Jakub Jelinek <jakub@redhat.com>
2459
2460 * single.c (GOMP_single_copy_end): Don't segfault if team is NULL.
2461 * testsuite/libgomp.dg/single-2.c: New test.
2462
2463 * testsuite/libgomp.dg/dg.exp (lang_library_path, lang_test_file,
2464 lang_link_flags): Unset, so that they aren't inherited from previously
2465 sourced *.exp.
2466
2467 * testsuite/libgomp.fortran/threadprivate1.f90: New test.
2468
24692005-10-12 Richard Henderson <rth@redhat.com>
2470
2471 * testsuite/lib/libgomp-dg.exp: Set blddir at toplevel.
2472 (libgomp_init): Use lang_test_file, lang_library_path, and
2473 lang_link_flags, set by the subdirectory files. Add -fopenmp here.
2474
2475 * testsuite/libgomp.fortran/fortran.exp (lang_library_path): New.
2476 (lang_test_file, lang_link_flags): New.
2477 (DEFAULT_FFLAGS, ALWAYS_CFLAGS, multilibs, blddir): Remove.
2478
2479 * testsuite/libgomp.c++/c++.exp, testsuite/libgomp.c++/loop-1.C,
2480 testsuite/libgomp.c++/loop-2.C, testsuite/libgomp.c++/loop-3.C,
2481 testsuite/libgomp.c++/loop-4.C, testsuite/libgomp.c++/nested-1.C,
2482 testsuite/libgomp.c++/parallel-1.C,
2483 testsuite/libgomp.c++/reduction-1.C,
2484 testsuite/libgomp.c++/reduction-2.C,
2485 testsuite/libgomp.c++/reduction-3.C,
2486 testsuite/libgomp.c++/sections-1.C, testsuite/libgomp.c++/shared-1.C,
2487 testsuite/libgomp.c++/shared-2.C, testsuite/libgomp.c++/single-1.C,
2488 testsuite/libgomp.c++/single-2.C, testsuite/libgomp.c++/single-3.C:
2489 New files, largely cribbed from the C testsuite.
2490
24912005-10-12 Jakub Jelinek <jakub@redhat.com>
2492
2493 * testsuite/libgomp.fortran/character1.f90: New test.
2494 * testsuite/libgomp.fortran/character2.f90: New test.
2495
2496 * testsuite/libgomp.dg/nested-1.c: New test.
2497 * testsuite/libgomp.dg/nested-2.c: New test.
2498 * testsuite/libgomp.fortran/do1.f90: New test.
2499 * testsuite/libgomp.fortran/do2.f90: New test.
2500
2501 * testsuite/libgomp.fortran/reference1.f90: New test.
2502
25032005-10-11 Jakub Jelinek <jakub@redhat.com>
2504
2505 * testsuite/libgomp.dg/reduction-1.c: New test.
2506 * testsuite/libgomp.dg/reduction-2.c: New test.
2507 * testsuite/libgomp.dg/reduction-3.c: New test.
2508
25092005-10-10 Jakub Jelinek <jakub@redhat.com>
2510
2511 * testsuite/libgomp.dg/atomic-1.c: New test.
2512 * testsuite/libgomp.dg/atomic-2.c: New test.
2513
25142005-10-09 Richard Henderson <rth@redhat.com>
2515
2516 * critical.c (atomic_lock): New.
2517 (initialize_critical): Initialize it.
2518 (GOMP_atomic_start, GOMP_atomic_end): New.
2519 * libgomp.map: Export them.
2520 * libgomp_g.h: Declare them.
2521
2522 * testsuite/libgomp.dg/atomic-10.c: Move from gcc testsuite.
2523
25242005-10-02 Richard Henderson <rth@redhat.com>
2525
2526 * configure.ac: Move save_CFLAGS hack earlier. Append -Wall/-Werror
2527 to XCFLAGS instead of CFLAGS.
2528
25292005-09-30 Richard Henderson <rth@redhat.com>
2530
2531 * configure.ac: Determine whether -pthread or -lpthread is needed.
2532 * Makefile.am (libgomp_la_LDFLAGS): Remove explicit -lpthread.
2533 * Makefine.in, configure: Rebuild.
2534
25352005-09-28 Richard Henderson <rth@redhat.com>
2536
2537 * testsuite/libgomp.dg/omp-loop03.c: Fix return code.
2538 * testsuite/libgomp.dg/omp-single-3.c: New test.
2539
25402005-09-28 Diego Novillo <dnovillo@redhat.com>
2541
2542 * testsuite/libgomp.dg/omp-single-2.c: New test.
2543 * testsuite/libgomp.dg/shared-2.c: Fix return code.
2544
25452005-09-27 Richard Henderson <rth@redhat.com>
2546
2547 * testsuite/libgomp.dg/omp-loop03.c: Add initial barrier.
2548 * testsuite/libgomp.dg/omp-parallel-for.c: Specify static schedule.
2549
25502005-09-27 Jakub Jelinek <jakub@redhat.com>
2551
2552 * testsuite/libgomp.dg/omp-loop03.c: New test.
2553
25542005-09-27 Diego Novillo <dnovillo@redhat.com>
2555
2556 * testsuite/libgomp.dg/omp-parallel-for.c: New test.
2557
25582005-09-27 Diego Novillo <dnovillo@redhat.com>
2559
2560 * testsuite/libgomp.dg/omp-single-1.c: New test.
2561 * testsuite/libgomp.dg/shared-1.c: Return 0.
2562 Add prototype for abort.
2563 * testsuite/libgomp.dg/shared-2.c: Likewise.
2564
25652005-09-26 Jakub Jelinek <jakub@redhat.com>
2566
2567 * testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
2568 constructs.
2569
25702005-09-26 Diego Novillo <dnovillo@redhat.com>
2571
2572 * testsuite/libgomp.dg/shared-1.c: New test.
2573 * testsuite/libgomp.dg/shared-2.c: New test.
2574
25752005-09-24 Richard Henderson <rth@redhat.com>
2576
2577 * testsuite/libgomp.dg/omp_workshare3.c: Mark dg-error.
2578
25792005-09-24 Richard Henderson <rth@redhat.com>
2580
2581 * iter.c (gomp_iter_static_next): Round up when computing number
2582 of iterations. Don't bother distributing a remainder equally.
2583
2584 * testsuite/libgomp.dg/omp-loop01.c (main1): Rename from main.
2585 Don't call srand. Zero b before testing.
2586 (main): New.
2587
25882005-09-24 Jakub Jelinek <jakub@redhat.com>
2589
2590 * testsuite/libgomp.fortran/omp_atomic1.f90: New test.
2591 * testsuite/libgomp.fortran/omp_atomic2.f90: New test.
2592
25932005-09-23 Jakub Jelinek <jakub@redhat.com>
2594
2595 * testsuite/libgomp.fortran/omp_parse1.f90: Add a test for !$omp do
2596 without !$omp end do, followed immediately by subroutine end.
2597
25982005-09-23 Diego Novillo <dnovillo@redhat.com>
2599
2600 * testsuite/libgomp.dg/omp-parallel-if.c: New test.
2601
26022005-09-22 Richard Henderson <rth@redhat.com>
2603
2604 * critical.c (GOMP_critical_name_start): Change argument to void**.
2605 Reuse the pointer space if the mutex fits.
2606 (GOMP_critical_name_end): Likewise.
2607 (initialize_critical): Don't define if GOMP_MUTEX_INIT_0.
2608 * libgomp_g.h (GOMP_critical_name_start): Update decl.
2609 (GOMP_critical_name_end): Likewise.
2610 * config/linux/mutex.h (GOMP_MUTEX_INIT_0): New.
2611 * config/posix/mutex.h (GOMP_MUTEX_INIT_0): New.
2612
26132005-09-20 Richard Henderson <rth@redhat.com>
2614
2615 * critical.c (GOMP_critical_name_start, GOMP_critical_name_end): New.
2616 (create_lock_lock): New.
2617 (initialize_critical): Initialize it.
2618 * libgomp.map (GOMP_critical_name_start, GOMP_critical_name_end): New.
2619 * libgomp_g.h (GOMP_ordered_start, GOMP_ordered_end): Declare.
2620
26212005-09-20 Diego Novillo <dnovillo@redhat.com>
2622
2623 * testsuite/libgom.dg/omp-loop01.c: Include stdio.h.
2624
26252005-09-20 Diego Novillo <dnovillo@redhat.com>
2626
2627 * testsuite/libgomp.dg/omp-loop01.c: New test.
2628 * testsuite/libgomp.dg/omp-loop02.c: New test.
2629
26302005-09-20 Jakub Jelinek <jakub@redhat.com>
2631
2632 * configure.ac (AC_PROG_FC): Add.
2633 (USE_FORTRAN): New automake conditional.
2634 * configure: Rebuilt.
2635 * Makefile.am (libgomp_la_SOURCES): Add fortran.c.
2636 (nodist_include_HEADERS): Add omp_lib.h, omp_lib.f90 and libgomp_f.h.
2637 If USE_FORTRAN, add also omp_lib.mod and omp_lib_kinds.mod.
2638 Add rules to build them.
2639 * Makefile.in: Rebuilt.
2640 * mkomp_h.pl: Compute and replace also OMP_LOCK_KIND and
2641 OMP_NEST_LOCK_KIND.
2642 * libgomp.map: Add Fortran wrappers.
2643 * libgomp_f.h.in: New file.
2644 * omp_lib.h.in: New file.
2645 * omp_lib.f90.in: New file.
2646 * fortran.c: New file.
2647 * testsuite/lib/libgomp-dg.exp: Load a few more .exp files.
2648 Append libgfortran directory to LD_LIBRARY_PATH if it exists.
2649 Add -Lpath_to_libgfortran and -lgfortran -lgfortranbegin if
2650 libgfortran has been built.
2651 * testsuite/libgomp.fortran/fortran.exp: New file.
2652 * testsuite/libgomp.fortran/omp_cond1.f: New test.
2653 * testsuite/libgomp.fortran/omp_cond2.f: New test.
2654 * testsuite/libgomp.fortran/omp_cond3.F90: New test.
2655 * testsuite/libgomp.fortran/omp_cond4.F90: New test.
2656 * testsuite/libgomp.fortran/omp_hello.f: New test.
2657 * testsuite/libgomp.fortran/omp_orphan.f: New test.
2658 * testsuite/libgomp.fortran/omp_parse1.f90: New test.
2659 * testsuite/libgomp.fortran/omp_parse2.f90: New test.
2660 * testsuite/libgomp.fortran/omp_parse3.f90: New test.
2661 * testsuite/libgomp.fortran/omp_parse4.f90: New test.
2662 * testsuite/libgomp.fortran/omp_reduction.f: New test.
2663 * testsuite/libgomp.fortran/omp_workshare1.f: New test.
2664 * testsuite/libgomp.fortran/omp_workshare2.f: New test.
2665
26662005-08-30 Richard Henderson <rth@redhat.com>
2667
2668 * loop.c (GOMP_loop_static_start): Provide fallback wrapper
2669 function for when aliases are not usable.
2670 (GOMP_loop_dynamic_start, GOMP_loop_guided_start,
2671 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
2672 GOMP_loop_ordered_guided_start, GOMP_loop_static_next,
2673 GOMP_loop_dynamic_next, GOMP_loop_guided_next,
2674 GOMP_loop_ordered_static_next, GOMP_loop_ordered_dynamic_next,
2675 GOMP_loop_ordered_guided_next): Likewise.
2676 * ordered.c (GOMP_ordered_start): Likewise.
2677
26782005-08-01 Diego Novillo <dnovillo@redhat.com>
2679
2680 * testsuite/libgomp.dg/dg.exp: Use -O2 for now.
2681 * testsuite/libgomp.dg/omp_hello.c: Fix return code
2682 * testsuite/libgomp.dg/omp_matvec.c: Likewise.
2683 * testsuite/libgomp.dg/omp_orphan.c: Likewise
2684 * testsuite/libgomp.dg/omp_reduction.c: Likewise
2685 * testsuite/libgomp.dg/omp_workshare1.c: Likewise
2686 * testsuite/libgomp.dg/omp_workshare2.c: Likewise
2687 * testsuite/libgomp.dg/omp_workshare3.c: Likewise
2688 * testsuite/libgomp.dg/omp_workshare4.c: Likewise
2689
26902005-07-07 Eric Christopher <echristo@redhat.com>
2691 Diego Novillo <dnovillo@redhat.com>
2692
2693 * testsuite/libgomp.dg/dg.exp: Add -fopenmp to DEFAULT_CFLAGS.
2694 * testsuite/libgomp.dg/omp_hello.c: Add standard includes, fix
2695 up code.
2696 * testsuite/libgomp.dg/omp_matvec.c: Ditto.
2697 * testsuite/libgomp.dg/omp_orphan.c: Ditto.
2698 * testsuite/libgomp.dg/omp_reduction.c: Ditto.
2699 * testsuite/libgomp.dg/omp_workshare1.c: Ditto.
2700 * testsuite/libgomp.dg/omp_workshare2.c: Ditto.
2701 * testsuite/libgomp.dg/omp_workshare3.c: Ditto.
2702 * testsuite/libgomp.dg/omp_workshare4.c: Ditto.
2703
27042005-06-13 Diego Novillo <dnovillo@redhat.com>
2705
2706 * TOPLEVEL.patch: Remove.
2707
27082005-05-16 Richard Henderson <rth@redhat.com>
2709
2710 * configure.ac: Test for clock_gettime.
2711 * config.h.in, configure: Rebuild.
2712 * config/posix/time.c: Use recommended TIME_WITH_SYS_TIME pattern.
2713 (omp_get_wtime): Use clock_gettime if available.
2714 (omp_get_wtick): Use clock_getres if available.
2715
27162005-05-11 Richard Henderson <rth@redhat.com>
2717
2718 * config/linux/ia64/futex.h: New file.
2719 * configure.tgt: Use it.
2720
2721 * team.c (gomp_barrier_init, gomp_barrier_destroy): Mark inline.
2722
27232005-05-07 Richard Henderson <rth@redhat.com>
2724
2725 * config/linux/powerpc/futex.h: New file.
2726 * configure.tgt: Use it.
2727
2728 * config/linux/i486/futex.h: Merge ...
2729 * config/linux/x86_64/futex.h: ... into ...
2730 * config/linux/x86/futex.h: ... here.
2731 * configure.tgt: Update to match.
2732
27332005-05-06 Richard Henderson <rth@redhat.com>
2734
2735 * config/linux/alpha/futex.h: Conditionally define SYS_futex.
2736 * config/linux/i486/futex.h: Likewise.
2737 * config/linux/x86_64/futex.h: Likewise.
2738
2739 * config/linux/lock.c: New file.
2740 * config/linux/omp-lock.h: New file.
2741
2742 * critical.c, env.h: Don't include omp.h
2743 * config/posix/lock.c: Include libgomp.h instead of omp.h.
2744 * config/posix/time.c: Likewise.
2745 * config/posix/omp-lock.h: New file.
2746 * libgomp.h: Include omp-lock.h and omp.h.
2747 * Makefile.am (nodist_include_HEADERS): New.
2748 (omp.h): New rule.
2749 * configure.ac (PERL): New.
2750 * mkomp_h.pl: New file.
2751 * omp.h.in: Rename from omp.h; replace omp_lock_t and omp_nest_lock_t
2752 with templates.
2753 * Makefile.in, configure, testsuite/Makefile.in: Rebuild.
2754
2755 * testsuite/lib/libgomp-dg.exp (libgomp_init): Add include into
2756 build directory. Re-add -march=i486 hack.
2757
2758 * testsuite/lib/libgomp-dg.exp (libgomp_compile_flags): Remove.
2759 (libgomp_link_flags): Remove.
2760 (libgomp_initialized): Remove.
2761 (libgomp_init): Don't protect from reinitialization. Copy code
2762 from libstdc++ for getting the multilib set correctly.
2763
27642005-05-05 Richard Henderson <rth@redhat.com>
2765
2766 * config/linux/alpha/futex.h: New file.
2767 * configure.tgt (alpha*-*-linux*): Use it.
2768
2769 * config/posix/mutex.c: New file.
2770 * config/posix/sem.c: Use libgomp.h.
2771
2772 * configure.tgt (x86_64-linux): Also test CC for -m32.
2773 * config/linux/x86_64/futex.h (futex_wait): Fix r10 usage.
2774
a1daed2d 2775 * testsuite/lib/libgomp-dg.exp (libgomp_link_flags): Add /
953ff289
DN
2776 after $gccpath.
2777
2778 * Makefile.am (SUBDIRS): New.
2779 (libgomp_la_LDFLAGS): Add -lpthread.
2780 * configure.ac (AM_INIT_AUTOMAKE): Enable dependencies.
2781 * Makefile.in, aclocal.m4, config.h.in, configure: Rebuild.
2782
2783 * libgomp_g.h: New file.
2784 * libgomp.h: Split out all public declarations to libgomp_g.h.
2785 Use pragma GCC visibility instead of ATTRIBUTE_HIDDEN.
2786 * config/linux/mutex.h: Remove ATTRIBUTE_HIDDEN.
2787 * config/linux/sem.h: Likewise.
2788 * config/posix/sem.h: Likewise.
2789
2790 * Makefile.am (AM_LDFLAGS): New.
2791 (libgomp_version_script): Split out from ...
2792 (libgomp_la_LDFLAGS): ... here.
2793 (libgomp_version_info): New.
2794 * acinclude.m4 (LIBGOMP_CHECK_TLS): Use LIBGOMP_ENABLE.
2795 (LIBGOMP_ENABLE): New.
2796 (LIBGOMP_CHECK_LINKER_FEATURES): New.
2797 (LIBGOMP_ENABLE_SYMVERS): New.
2798 * configure.ac (AC_INIT): Version 1.0.
2799 (enable-version-specific-runtime-libs): Use LIBGOMP_ENABLE.
2800 (enable-linux-futex): Likewise. Rename from enable-futex.
2801 (libtool_VERSION): New.
2802 (LIBGOMP_ENABLE_SYMVERS): Use it.
2803 * configure.tgt: Check with_gnu_ld wrt have_tls optimizations.
2804 * Makefile.in, aclocal.m4, configure: Rebuild.
2805
2806 * config/linux/mutex.c: Include libgomp.h instead of mutex.h.
2807 (gomp_mutex_unlock_slow): Fix typo.
2808 * config/linux/sem.c: Similarly.
2809 (gomp_sem_post_slow): Fix typo.
2810 * config/linux/sem.h (gomp_sem_post_slow): Fix typo.
2811 * config/linux/i486/futex.h: Remove USE_LINUX_SYSENTER code.
2812 [__PIC__] (sys_futex0): Don't use tmp output in asm.
2813
2814 * Makefile.am (AM_CFLAGS): Expand with XCFLAGS.
2815 (libgomp_la_LDFLAGS): Add top_srcdir to path.
2816 * acinclude.m4: Copy libtool.m4 stuff from libgfortran.
2817 * configure.ac: Check for getloadavg. Substitute XCFLAGS and
2818 XLDFLAGS. Add XCFLAGS to CFLAGS around LIBGOMP_CHECK_SYNC_BUILTINS.
2819 * configure.tgt: Set XCFLAGS and XLDFLAGS instead of CFLAGS and
2820 LDFLAGS. Pull enable_futex check to top-level.
2821 * libgomp.h: Fix sem.h and mutex.h includes. Define ATTRIBUTE_HIDDEN.
2822 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
2823
2824 First attempt at real configury.
2825 * Makefile, config.h: Remove file.
2826 * Makefile.am, Makefile.in: New file.
2827 * acinclude.m4 aclocal.m4: New file.
2828 * configure.ac, configure.tgt, configure: New file.
2829
2830 * config/posix/lock.c: Rename from sys-lock.c.
2831 * config/posix/mutex.h: Rename from sys-mutex.h.
2832 * config/posix/sem.c: Rename from sys-sem.c.
2833 * config/posix/sem.h: Rename from sys-sem.h.
2834 * config/posix/proc.c: Rename from sys-proc.c.
2835 * config/posix/time.c: Rename from sys-proc.c.
2836
2837 * config/linux/mutex.c: New file.
2838 * config/linux/mutex.h: New file.
2839 * config/linux/sem.c: New file.
2840 * config/linux/sem.h: New file.
2841 * config/linux/i486/futex.h: New file.
2842 * config/linux/x86_64/futex.h: New file.
2843
28442005-05-04 Richard Henderson <rth@redhat.com>
2845
2846 * iter.c (gomp_iter_dynamic_next, gomp_iter_guided_next): New.
2847 * libgomp.h: Declare them.
2848 * loop.c (gomp_loop_dynamic_start, gomp_loop_guided_start,
2849 gomp_loop_dynamic_next, gomp_loop_guided_next): Use them.
2850
28512005-05-04 Richard Henderson <rth@redhat.com>
2852
2853 * libgomp-1 code drop
2854
28552005-05-04 Richard Henderson <rth@redhat.com>
2856
2857 * iter.c (gomp_iter_static_next): Return tri-state on 0.
2858 * ordered.c (gomp_ordered_static_next): Remove not_last argument.
2859 * libgomp.h (struct gomp_team_state): Make static_trip unsigned.
2860 (gomp_iter_static_next): Update.
2861 (gomp_ordered_static_next): Update.
2862 * loop.c (gomp_loop_static_start): Update for gomp_iter_static_next.
2863 (gomp_loop_ordered_static_start): Likewise. Exit early for a
2864 totally empty range.
2865 (gomp_loop_ordered_static_next): Refine test for calling
2866 gomp_ordered_static_next.
2867 * testsuite/ordered-1.c: Add case for more threads than iterations.
2868
2869 * iter.c (gomp_iter_runtime_next_locked): Remove.
2870 * loop.c (gomp_loop_static_start, gomp_loop_dynamic_start,
a1daed2d 2871 gomp_loop_guided_start, gomp_loop_ordered_static_start,
953ff289
DN
2872 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
2873 gomp_loop_static_next, gomp_loop_dynamic_next, gomp_loop_guided_next,
2874 gomp_loop_ordered_static_next, gomp_loop_ordered_dynamic_next,
2875 gomp_loop_ordered_guided_next): Downcase name, make static, add
2876 an external alias with the old name.
2877 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
2878 GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Use a
2879 switch and call one of the above static functions.
2880 * libgomp.h: Update.
2881
2882 * work.c (gomp_work_share_start): Lock the mutex for !first too.
2883 * loop.c (GOMP_loop_static_start, GOMP_loop_dynamic_start,
2884 GOMP_loop_guided_start, GOMP_loop_runtime_start,
2885 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
2886 GOMP_loop_ordered_guided_start): Update to match.
2887 * sections.c (GOMP_sections_start): Likewise.
2888 * single.c (GOMP_single_start, GOMP_single_copy_start): Likewise.
2889
2890 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
2891 gomp_ordered_static_init, gomp_ordered_static_next): Rename s/_loop//.
2892 Use bounds check instead of modulus.
2893 (gomp_ordered_sync): Split out of GOMP_ordered_start.
2894 (gomp_ordered_last): Don't sync with ordered_owner here.
2895 (gomp_ordered_next): Likewise.
2896 (gomp_ordered_static_loop_next): Likewise.
2897 * loop.c, libgomp.h: Update to match.
2898
2899 * libgomp.h (GOMP_barrier): Declare.
2900
2901 * testsuite/barrier-1.c: New file.
2902 * testsuite/critical-1.c: New file.
2903 * testsuite/ordered-2.c: New file.
2904 * testsuite/ordered-1.c: New file.
2905 * testsuite/sections-1.c: New file.
2906 * testsuite/single-1.c: New file.
2907 * testsuite/Makefile (TESTS): Add them.
2908
29092005-05-04 Richard Henderson <rth@redhat.com>
2910
2911 * libgomp.h (struct gomp_work_share): Add ordered_owner.
2912 * loop.c (GOMP_loop_static_start): If not the startup thread,
2913 acquire the mutex to wait for initialization complete.
2914 (GOMP_loop_ordered_static_start): Likewise.
2915 (GOMP_loop_ordered_runtime_start): Likewise.
2916 (GOMP_loop_ordered_static_first): Remove.
2917 (GOMP_loop_ordered_dynamic_first): Remove.
2918 (GOMP_loop_ordered_guided_first): Remove.
2919 (GOMP_loop_ordered_runtime_first): Remove.
2920 * ordered.c (gomp_ordered_loop_first): Post to own release when
2921 we're the first thread.
2922 (gomp_ordered_loop_last): Wait on release if not owner.
2923 (gomp_ordered_loop_next): Likewise.
2924 (gomp_ordered_static_loop_init): New.
2925 (gomp_ordered_static_loop_next): Use ordered_owner.
2926 (GOMP_ordered_start): Likewise.
2927 * work.c (gomp_new_work_share): Initialize ordered_owner.
2928
29292005-05-03 Richard Henderson <rth@redhat.com>
2930
2931 * Makefile (OPT): New.
2932 (CFLAGS): Use it.
2933
2934 * loop.c (GOMP_loop_end, GOMP_loop_end_nowait): New.
2935 * sections.c (GOMP_sections_end, GOMP_sections_end_nowait): New.
2936 * libgomp.h, libgomp.map, NOTES: Update to match.
2937
2938 * team.c (struct gomp_thread_start_data): Remove ts, fn, data.
2939 Add initialized and thr members.
2940 (gomp_thread_start): Pause when initially spawned to wait for
2941 the whole team to be created.
2942 (gomp_team_start): Release team members at the end.
2943
2944 * testsuite/loop-1.c (N): New. Use it instead of hardcoded 100.
2945 (f_foo_1): Use GOMP_loop_end.
2946 (f_foo_2): Use GOMP_loop_end_nowait.
2947
2948 * testsuite/loop-2.c: New file.
2949 * testsuite/Makefile (TESTS): Add it.
2950
29512005-05-03 Richard Henderson <rth@redhat.com>
2952
2953 * iter.c (gomp_iter_static_next): Fix overflow check typo.
2954 (gomp_iter_dynamic_next_locked): Fix overflow check thinko.
2955 * team.c (new_team): Initialize oldest_live_gen to 1 if no
2956 initial work_share.
2957
2958 * testsuite/Makefile: New file.
2959 * testsuite/loop-1.c: New file.
2960
29612005-05-03 Richard Henderson <rth@redhat.com>
2962
2963 Initial implementation and checkin.