Adjust failing testsuite pattern.
[gcc.git] / libgomp / ChangeLog
1 2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
2
3 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
4
5 2010-09-23 Tobias Burnus <burnus@net-b.de>
6
7 * libgomp.texi (omp_get_nested, omp_set_nested, omp_set_dynamic):
8 Change Fortran datatype to LOGICAL.
9 (omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
10 omp_unset_nested_lock): Use intent(inout) instead of intent(out).
11
12 2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13
14 * configure: Regenerate.
15
16 2010-07-26 Jakub Jelinek <jakub@redhat.com>
17
18 * libgomp.texi: Add function keyword to a couple of Fortran
19 interfaces, use integer instead of int for Fortran.
20
21 2010-07-26 Aldy Hernandez <aldyh@redhat.com>
22
23 * libgomp.texi: Fix spelling and pasto problems throughout.
24 Adjust prototypes to match code.
25
26 2010-07-24 Tobias Burnus <burnus@net-b.de>
27
28 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add -w to
29 silence -fwhole-file warning.
30
31 2010-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
32
33 * configure.tgt (*-*-solaris2.[56]*): Removed.
34
35 2010-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
36
37 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
38 Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
39 LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
40 (HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
41 targetting solaris2*.
42 * configure: Regenerate.
43 * config.h.in: Regenerate.
44
45 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
46 libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
47 Add libgomp_version_dep.
48 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
49 versioning.
50 [!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
51 (libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
52 * Makefile.in: Regenerate.
53
54 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
55 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
56 * libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
57 to common block, protected by
58 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
59
60 2010-06-10 Gerald Pfeifer <gerald@pfeifer.com>
61
62 * libgomp.texi: Move to GFDL version 1.3. Update copyright years.
63
64 2010-06-09 Iain Sandoe <iains@gcc.gnu.org>
65
66 PR bootstrap/43170
67 * configure: Regenerate.
68
69 2010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
70
71 PR other/43620
72 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
73 * configure: Regenerate.
74 * Makefile.in: Regenerate.
75 * testsuite/Makefile.in: Regenerate.
76
77 2010-04-26 Jakub Jelinek <jakub@redhat.com>
78
79 PR c/43893
80 * testsuite/libgomp.c/pr43893.c: New test.
81 * testsuite/libgomp.c++/pr43893.C: New test.
82
83 2010-04-21 Jakub Jelinek <jakub@redhat.com>
84
85 PR middle-end/43570
86 * testsuite/libgomp.fortran/vla8.f90: New test.
87
88 2010-04-20 Jakub Jelinek <jakub@redhat.com>
89
90 PR libgomp/43706
91 * config/linux/affinity.c (gomp_init_affinity): Decrease
92 gomp_available_cpus if affinity mask confines the process to fewer
93 CPUs.
94 * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is
95 non-NULL, just return gomp_available_cpus.
96
97 PR libgomp/43569
98 * sections.c (gomp_sections_init): Initialize ws->mode.
99
100 2010-04-14 Uros Bizjak <ubizjak@gmail.com>
101
102 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
103 not unused bar variable.
104 * configure: Regenerate.
105
106 2010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
107
108 * Makefile.in: Regenerate.
109 * aclocal.m4: Regenerate.
110 * testsuite/Makefile.in: Regenerate.
111
112 2010-03-22 Jakub Jelinek <jakub@redhat.com>
113
114 PR libgomp/42942
115 * env.c (parse_unsigned_long): Add ALLOW_ZERO argument.
116 (initialize_env): Adjust callers.
117 (omp_set_max_active_levels): Set gomp_max_active_levels_var even
118 when the argument is 0.
119
120 * testsuite/libgomp.c/pr42942.c: New test.
121
122 2010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
123
124 PR middle-end/42644
125 PR middle-end/42130
126 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
127 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust.
128
129 2010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
130
131 * testsuite/libgomp.c++/task-1.C: Renamed err to e.
132 * testsuite/libgomp.c++/task-6.C: Likewise.
133
134 2010-01-28 Steve Ellcey <sje@cup.hp.com>
135
136 * configure.tgt (*-*-hpux*): Add -frandom-seed flag.
137
138 2010-01-26 Paolo Bonzini <bonzini@gnu.org>
139
140 * configure.ac: Test for executability of _the first word_ of GFORTRAN.
141 * configure: Regenerate.
142
143 2010-01-26 Jakub Jelinek <jakub@redhat.com>
144
145 PR fortran/42866
146 * testsuite/libgomp.fortran/allocatable5.f90: New test.
147
148 2010-01-20 Paolo Bonzini <bonzini@gnu.org>
149
150 * configure.ac: Test for executability of GFORTRAN.
151 * configure: Regenerate.
152
153 2010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
154
155 * configure: Regenerate.
156
157 2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
158
159 PR libgomp/42602
160 * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic.
161
162 2010-01-03 Richard Guenther <rguenther@suse.de>
163
164 * testsuite/libgomp.fortran/recursion1.f90: New testcase.
165
166 2009-12-23 Sebastian Pop <sebpop@gmail.com>
167
168 * testsuite/libgomp.graphite/pr4118.c: New.
169
170 2009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
171
172 * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage
173 for darwin, protect the test with require-effective-target tls_runtime.
174 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
175
176 2009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
177
178 PR target/41605
179 * testsuite/lib/libgomp.exp: Provide -B options to allow for
180 link spec %s substitutions for static libraries.
181
182 2009-12-18 Jack Howarth <howarth@bromo.med.uc.edu>
183
184 PR testsuite/42135
185 * libgomp.graphite/force-parallel-2.c: Reduce array size.
186
187 2009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
188
189 * Makefile.in: Regenerate.
190 * configure: Regenerate.
191 * testsuite/Makefile.in: Regenerate.
192
193 2009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
194
195 * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
196 settings for LC_ALL and LANG.
197
198 2009-11-25 Jakub Jelinek <jakub@redhat.com>
199
200 PR fortran/42162
201 * testsuite/libgomp.fortran/pr42162.f90: New test.
202
203 2009-11-13 Jakub Jelinek <jakub@redhat.com>
204
205 PR middle-end/42029
206 * testsuite/libgomp.c/pr42029.c: New test.
207
208 2009-10-26 Jakub Jelinek <jakub@redhat.com>
209
210 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
211 *s. Accept ld version without text in ()s.
212 * configure: Regenerated.
213
214 2009-10-22 Razya Ladelsky <razya@il.ibm.com>
215
216 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan.
217
218 2009-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
219
220 PR libgomp/41418
221 * configure.ac: Set FC to "no" if $GFORTRAN starts with "no"
222 or a hyphen (happens with fortran language disabled).
223 * configure: Regenerate.
224
225 2009-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
226
227 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
228 use sed script portable to Solaris /bin/sed for extracting ld
229 version.
230 * configure: Regenerate.
231
232 2009-09-17 Alexander Monakov <amonakov@ispras.ru>
233
234 * testsuite/libgomp.graphite/bounds.c: New test.
235
236 2009-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
237
238 * Makefile.am (libgomp_la_LINK): New.
239 * Makefile.in: Regenerate.
240
241 2009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
242
243 * configure.ac (AC_PREREQ): Bump to 2.64.
244
245 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
246
247 * Makefile.am (install-html, install-pdf): Remove.
248 * Makefile.in: Regenerate.
249
250 * Makefile.in: Regenerate.
251 * aclocal.m4: Regenerate.
252 * config.h.in: Regenerate.
253 * configure: Regenerate.
254 * testsuite/Makefile.in: Regenerate.
255
256 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
257
258 * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
259 * Makefile.in: Regenerate.
260
261 2009-08-20 Dave Korn <dave.korn.cygwin@gmail.com>
262
263 * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.
264 * Makefile.in: Regenerate.
265
266 2009-08-19 Tobias Burnus <burnus@net-b.de>
267
268 PR fortran/41102
269 omp_lib.h.in: Fix -std=f95 errors.
270
271
272 2009-08-14 David Edelsohn <edelsohn@gnu.org>
273
274 * testsuite/libgomp.graphite: Move from gcc.dg/graphite.
275 * testsuite/libgomp.graphite/graphite_autopar.exp: Delete.
276 * testsuite/libgomp.graphite/graphite.exp: New.
277
278 2009-08-05 Andreas Tobler <a.tobler@schweiz.org>
279
280 * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared
281 only build.
282
283 2009-08-04 David Daney <ddaney@caviumnetworks.com>
284
285 * config/linux/mutex.h (gomp_mutex_unlock): Add comment about
286 needed memory barrier semantics.
287 * config/linux/mips/mutex.h: New file.
288
289 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
290
291 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
292
293 2009-07-16 Joseph Myers <joseph@codesourcery.com>
294
295 * configure: Regenerate.
296
297 2009-07-11 Richard Sandiford <rdsandiford@googlemail.com>
298
299 PR testsuite/40699
300 PR testsuite/40707
301 PR testsuite/40709
302 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
303 * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
304 testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.
305
306 2009-07-02 Richard Sandiford <r.sandiford@uk.ibm.com>
307
308 * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
309 options when choosing a multilib.
310
311 2009-06-30 Richard Sandiford <r.sandiford@uk.ibm.com>
312
313 * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
314 ld_library_path. Use add_path. Add just find_libgcc_s to
315 ld_library_path, not every libgcc multilib directory.
316 * testsuite/libgomp.c/c.exp (ld_library_path): Don't call
317 gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
318 * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
319 Use add_path.
320 * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
321
322 2009-06-09 Nathan Froyd <froydnj@codesourcery.com>
323
324 * Makefile.am (LTLDFLAGS): Define.
325 (LINK): Define.
326 * Makefile.in: Regenerate.
327
328 2009-05-27 Janne Blomqvist <jb@gcc.gnu.org>
329
330 PR fortran/39718
331 * testsuite/libgomp.fortran/fortran.exp: Don't link with
332 libgfortranbegin, check existence of libgfortran.a instead of
333 libgfortranbegin.a.
334
335 2009-05-20 Jakub Jelinek <jakub@redhat.com>
336
337 PR libgomp/40174
338 * team.c (gomp_thread_start): Destroy thr->release semaphore.
339 (gomp_free_pool_helper): Likewise.
340
341 2009-04-20 Vasilis Liaskovitis <vliaskov@gmail.com>
342 Jakub Jelinek <jakub@redhat.com>
343
344 PR fortran/35423
345 * testsuite/libgomp.fortran/workshare2.f90: New test.
346
347 2009-04-09 Nick Clifton <nickc@redhat.com>
348
349 * iter.c: Change copyright header to refer to version 3 of the
350 GNU General Public License with version 3.1 of the GCC Runtime
351 Library Exception and to point readers at the COPYING3 and
352 COPYING3.RUNTIME files and the FSF's license web page.
353 * alloc.c: Likewise.
354 * barrier.c: Likewise.
355 * config/bsd/proc.c: Likewise.
356 * config/linux/affinity.c: Likewise.
357 * config/linux/alpha/futex.h: Likewise.
358 * config/linux/bar.c: Likewise.
359 * config/linux/bar.h: Likewise.
360 * config/linux/ia64/futex.h: Likewise.
361 * config/linux/ia64/mutex.h: Likewise.
362 * config/linux/lock.c: Likewise.
363 * config/linux/mips/futex.h: Likewise.
364 * config/linux/mutex.c: Likewise.
365 * config/linux/mutex.h: Likewise.
366 * config/linux/powerpc/futex.h: Likewise.
367 * config/linux/proc.c: Likewise.
368 * config/linux/ptrlock.c: Likewise.
369 * config/linux/ptrlock.h: Likewise.
370 * config/linux/s390/futex.h: Likewise.
371 * config/linux/sem.c: Likewise.
372 * config/linux/sem.h: Likewise.
373 * config/linux/sparc/futex.h: Likewise.
374 * config/linux/wait.h: Likewise.
375 * config/linux/x86/futex.h: Likewise.
376 * config/mingw32/proc.c: Likewise.
377 * config/mingw32/time.c: Likewise.
378 * config/posix/affinity.c: Likewise.
379 * config/posix/bar.c: Likewise.
380 * config/posix/bar.h: Likewise.
381 * config/posix/lock.c: Likewise.
382 * config/posix/mutex.h: Likewise.
383 * config/posix/proc.c: Likewise.
384 * config/posix/ptrlock.h: Likewise.
385 * config/posix/sem.c: Likewise.
386 * config/posix/sem.h: Likewise.
387 * config/posix/time.c: Likewise.
388 * config/posix95/lock.c: Likewise.
389 * critical.c: Likewise.
390 * env.c: Likewise.
391 * error.c: Likewise.
392 * fortran.c: Likewise.
393 * iter_ull.c: Likewise.
394 * libgomp.h: Likewise.
395 * libgomp_f.h.in: Likewise.
396 * libgomp_g.h: Likewise.
397 * loop.c: Likewise.
398 * loop_ull.c: Likewise.
399 * omp.h.in: Likewise.
400 * omp_lib.f90.in: Likewise.
401 * omp_lib.h.in: Likewise.
402 * ordered.c: Likewise.
403 * parallel.c: Likewise.
404 * sections.c: Likewise.
405 * single.c: Likewise.
406 * task.c: Likewise.
407 * team.c: Likewise.
408 * work.c: Likewise.
409
410 2009-04-09 Jakub Jelinek <jakub@redhat.com>
411
412 * testsuite/config/default.exp: Change copyright header to refer to
413 version 3 of the GNU General Public License and to point readers
414 at the COPYING3 file and the FSF's license web page.
415
416 2009-04-08 Jakub Jelinek <jakub@redhat.com>
417
418 PR middle-end/39573
419 * libgomp.c++/pr39573.C: New test.
420
421 2009-04-01 Jakub Jelinek <jakub@redhat.com>
422
423 PR other/39591
424 * testsuite/libgomp.c/pr39591-1.c: New test.
425 * testsuite/libgomp.c/pr39591-2.c: New test.
426 * testsuite/libgomp.c/pr39591-3.c: New test.
427
428 2009-03-25 Uros Bizjak <ubizjak@gmail.com>
429
430 * testsuite/libgomp.c/atomic-5.c: Cleanup cpuid usage.
431 * testsuite/libgomp.c/atomic-6.c: Ditto.
432
433 2009-03-23 Jakub Jelinek <jakub@redhat.com>
434
435 PR c/39495
436 * testsuite/libgomp.c/loop-12.c: New test.
437 * testsuite/libgomp.c/loop-11.c: New test.
438 * testsuite/libgomp.c++/loop-11.C: New test.
439 * testsuite/libgomp.c++/loop-12.C: New test.
440 * testsuite/libgomp.c++/for-8.C: New test.
441
442 2009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
443
444 * configure: Regenerate.
445
446 2009-02-11 Jakub Jelinek <jakub@redhat.com>
447
448 PR middle-end/39154
449 * testsuite/libgomp.c/pr39154.c: New test.
450
451 2009-01-30 Ian Lance Taylor <iant@google.com>
452
453 * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
454 libgomp_ld_is_gold. Get gold version number.
455 (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
456 * configure: Rebuild.
457
458 2009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
459
460 * testsuite/lib/libgomp.exp: Add -B option for targets that
461 use libgfortran.a%s in their specs.
462
463 2009-01-07 Jakub Jelinek <jakub@redhat.com>
464
465 PR libgomp/38086
466 * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New check.
467 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undefine if
468 HAVE_AS_SYMVER_DIRECTIVE is not defined.
469 * configure: Regenerated.
470 * config.h.in: Likewise.
471
472 2008-12-28 Jakub Jelinek <jakub@redhat.com>
473
474 PR c++/38650
475 * testsuite/libgomp.c/pr38650.c: New test.
476 * testsuite/libgomp.c++/pr38650.C: New test.
477
478 2008-12-27 Jakub Jelinek <jakub@redhat.com>
479
480 * testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
481
482 2008-12-26 Uros Bizjak <ubizjak@gmail.com>
483
484 * testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
485
486 2008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
487
488 * configure: Regenerate.
489
490 2008-12-08 Jakub Jelinek <jakub@redhat.com>
491
492 PR middle-end/36802
493 * testsuite/libgomp.c/pr36802-1.c: New test.
494 * testsuite/libgomp.c/pr36802-2.c: New test.
495 * testsuite/libgomp.c/pr36802-3.c: New test.
496
497 2008-12-01 Janis Johnson <janis187@us.ibm.com>
498
499 PR libgomp/38270
500 * config/linux/powerpc/mutex.h: New.
501
502 2008-12-01 Jakub Jelinek <jakub@redhat.com>
503
504 PR c++/38257
505 * testsuite/libgomp.c++/for-7.C: New test.
506
507 PR c++/38348
508 * testsuite/libgomp.c++/for-6.C: New test.
509
510 2008-11-26 Janis Johnson <janis187@us.ibm.com>
511
512 PR testsuite/28870
513 * testsuite/lib/libgomp.exp: Include new timeout library files.
514 (libgomp_target_compile): Set timeout value from new proc.
515
516 2008-11-13 Steve Ellcey <sje@cup.hp.com>
517
518 PR libgomp/37938
519 * config/linux/ia64/mutex.h: New.
520
521 2008-11-04 Tobias Burnus <burnus@net-b.de>
522
523 PR libgomp/37935
524 * libgomp.texi (Runtime library routines, environment variables):
525 Update for OpenMP version 3.0.
526
527 2008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
528 Steve Ellcey <sje@cup.hp.com>
529
530 * configure: Regenerate for new libtool.
531 * Makefile.in: Ditto.
532 * testsuite/Makefile.in: Ditto.
533
534 2008-09-19 Jakub Jelinek <jakub@redhat.com>
535 Andreas Tobler <a.tobler@schweiz.org>
536
537 * config/bsd/proc.c: New file.
538 * configure.tgt (*-*-darwin*): Use config_path "bsd posix".
539 * configure.ac: Check for header <sys/sysctl.h>
540 * configure: Regenerate.
541 * config.h.in: Likewise.
542
543 2008-09-05 Janis Johnson <janis187@us.ibm.com>
544
545 * testsuite/ligbomp.c/c.exp: Unset lang_test_file only if it exists.
546
547 2008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
548
549 * Makefile.am (libgomp_la_LDFLAGS): Add -no-undefined.
550 * Makefile.in: Regenerated.
551 * testsuite/Makefile.in: Regenerated.
552
553 2008-08-21 Nathan Froyd <froydnj@codesourcery.com>
554
555 * testsuite/lib/libgomp.exp (libgomp_init): Only set things that
556 depend on blddir if blddir exists.
557 (libgomp_target_compile): Likewise.
558 * testsuite/libgomp.c++/c++.exp: Likewise.
559 * testsuite/libgomp.fortran/fortran.exp: Likewise.
560
561 2008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
562
563 * libgomp.texi: Update to GFDL 1.2. Update copyright years.
564 Do not list GPL as Invariant Section.
565
566 2008-07-28 Ilie Garbacea <ilie@mips.com>
567 Chao-ying Fu <fu@mips.com>
568
569 * configure.tgt: Enable futex for MIPS.
570 * config/linux/mips/futex.h: New file.
571
572 2008-07-16 Jakub Jelinek <jakub@redhat.com>
573
574 * team.c (gomp_team_end): Free team immediately if it has
575 just one thread.
576
577 2008-07-08 David Edelsohn <edelsohn@gnu.org>
578
579 * testsuite/libgomp.c++/c++.exp: Append multilib library path.
580 * testsuite/libgomp.fortran/fortran.exp: Same.
581 * testsuite/libgomp.c/c.exp: Same.
582 * testsuite/lib/libgomp.exp: Append AIX libgcc pthread multilib
583 directory to library path first.
584
585 2008-06-29 Krister Walfridsson <krister.walfridsson@gmail.com>
586
587 * env.c (parse_stacksize): Add cast to avoid warning.
588 (parse_spincount): Likewise.
589
590 2008-06-27 Jakub Jelinek <jakub@redhat.com>
591
592 * testsuite/libgomp.c/loop-10.c: New test.
593 * libgomp.c/loop-3.c (main): Add lastprivate clause.
594 * libgomp.c++/loop-6.C (main): Likewise.
595
596 PR debug/36617
597 * testsuite/libgomp.c/debug-1.c: New test.
598
599 2008-06-19 Jakub Jelinek <jakub@redhat.com>
600
601 * testsuite/libgomp.c/nqueens-1.c: New test.
602
603 PR c++/36523
604 * testsuite/libgomp.c++/task-7.C: New function.
605
606 2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
607
608 * configure: Regenerate.
609
610 2008-06-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
611
612 * env.c (initialize_env): Always initialize gomp_remaining_threads_lock
613 mutex when HAVE_SYNC_BUILTINS isn't defined.
614
615 2008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
616
617 * libgomp.texi (omp_test_lock): Fix typo.
618
619 2008-06-12 Tobias Burnus <burnus@net-b.de>
620
621 * omp_lib.f90.in: Add "implicit none".
622
623 2008-06-12 Jakub Jelinek <jakub@redhat.com>
624
625 PR middle-end/36506
626 * testsuite/libgomp.c/reduction-5.c: New test.
627
628 2008-06-11 Jakub Jelinek <jakub@redhat.com>
629
630 * libgomp.h (struct gomp_task): Add in_tied_task field.
631 * task.c (gomp_init_task): Initialize it.
632 (GOMP_task): Likewise. Call gomp_team_barrier_set_task_pending
633 unconditionally. Don't call gomp_team_barrier_wake if
634 current task is implicit or if(0) from implicit and number of
635 running tasks is equal to nthreads - 1.
636
637 PR libgomp/36471
638 * omp_lib.f90.in (omp_get_ancestor_thread_num_8,
639 omp_get_team_size_8): Fix pastos.
640
641 PR libgomp/36469
642 * configure.ac: Add AC_CHECK_FUNCS (strtoull).
643 * configure: Regenerated.
644 * config.h.in: Regenerated.
645 * env.c (strtoull): Define to strtoul if HAVE_STRTOULL is not
646 defined.
647
648 2008-06-06 Andreas Tobler <a.tobler@schweiz.org>
649
650 PR bootstrap/36452
651 * loop_ull.c (GOMP_loop_ull_static_start): Adjust API.
652 (GOMP_loop_ull_dynamic_start): Likewise.
653 (GOMP_loop_ull_guided_start): Likewise.
654 (GOMP_loop_ull_ordered_static_start): Likewise.
655 (GOMP_loop_ull_ordered_dynamic_start): Likewise.
656 (GOMP_loop_ull_ordered_guided_start): Likewise.
657
658 2008-06-06 Jakub Jelinek <jakub@redhat.com>
659 Richard Henderson <rth@redhat.com>
660 Ulrich Drepper <drepper@redhat.com>
661 Jakob Blomer <jakob.blomer@ira.uka.de>
662
663 * configure.ac (LIBGOMP_GNU_SYMBOL_VERSIONING): New AC_DEFINE.
664 Substitute also OMP_*LOCK_25*.
665 * configure: Regenerated.
666 * config.h.in: Regenerated.
667 * Makefile.am (libgomp_la_SOURCES): Add loop_ull.c, iter_ull.c,
668 ptrlock.c and task.c.
669 * Makefile.in: Regenerated.
670 * testsuite/Makefile.in: Regenerated.
671 * task.c: New file.
672 * loop_ull.c: New file.
673 * iter_ull.c: New file.
674 * libgomp.h: Include ptrlock.h.
675 (enum gomp_task_kind): New type.
676 (struct gomp_team): Add task_lock, task_queue, task_count,
677 task_running_count, single_count fields. Add
678 work_share_list_free_lock ifndef HAVE_SYNC_BUILTINS.
679 Remove work_share_lock, generation_mask,
680 oldest_live_gen, num_live_gen and init_work_shares fields, add
681 work work_share_list_alloc, work_share_list_free and work_share_chunk
682 fields. Change work_shares from pointer to pointers into an array.
683 Change ordered_release field into gomp_sem_t ** from flexible array
684 member. Add implicit_task and initial_work_shares fields.
685 Move close to the end of the struct.
686 (struct gomp_team_state): Add single_count, last_work_share,
687 active_level and level fields, remove work_share_generation.
688 (gomp_barrier_handle_tasks): New prototype.
689 (gomp_finish_task): New inline function.
690 (struct gomp_work_share): Move chunk_size, end, incr into
691 transparent union/struct, add chunk_size_ull, end_ll, incr_ll and
692 next_ll fields. Reshuffle fields. Add next_alloc,
693 next_ws, next_free and inline_ordered_team_ids fields, change
694 ordered_team_ids into pointer from flexible array member.
695 Add mode field. Put lock and next into a different cache line
696 from most of the write-once fields.
697 (gomp_iter_ull_static_next, gomp_iter_ull_dynamic_next_locked,
698 gomp_iter_ull_guided_next_locked, gomp_iter_ull_dynamic_next,
699 gomp_iter_ull_guided_next): New prototypes.
700 (gomp_new_icv): New prototype.
701 (struct gomp_thread): Add thread_pool and task fields.
702 (struct gomp_thread_pool): New type.
703 (gomp_new_team): New prototype.
704 (gomp_team_start): Change type of last argument.
705 (gomp_new_work_share): Removed.
706 (gomp_init_work_share, gomp_fini_work_share): New prototypes.
707 (gomp_work_share_init_done): New static inline.
708 (gomp_throttled_spin_count_var, gomp_available_cpus,
709 gomp_managed_threads): New extern decls.
710 (gomp_init_task): New prototype.
711 (gomp_spin_count_var): New extern var decl.
712 (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef if no visibility
713 or no alias support, or if not PIC.
714 (gomp_init_lock_30, gomp_destroy_lock_30, gomp_set_lock_30,
715 gomp_unset_lock_30, gomp_test_lock_30, gomp_init_nest_lock_30,
716 gomp_destroy_nest_lock_30, gomp_set_nest_lock_30,
717 gomp_unset_nest_lock_30, gomp_test_nest_lock_30, gomp_init_lock_25,
718 gomp_destroy_lock_25, gomp_set_lock_25, gomp_unset_lock_25,
719 gomp_test_lock_25, gomp_init_nest_lock_25, gomp_destroy_nest_lock_25,
720 gomp_set_nest_lock_25, gomp_unset_nest_lock_25,
721 gomp_test_nest_lock_25): New prototypes.
722 (omp_lock_symver, strong_alias): Define.
723 (gomp_remaining_threads_count, gomp_remaining_threads_lock): New
724 decls.
725 (gomp_end_task): New.
726 (struct gomp_task_icv, gomp_global_icv): New.
727 (gomp_thread_limit_var, gomp_max_active_levels_var): New.
728 (struct gomp_task): New.
729 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
730 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
731 (gomp_icv): New.
732 (gomp_schedule_type): Reorder enum to match
733 omp_sched_t.
734 * team.c (struct gomp_thread_start_data): Add thread_pool and task
735 fields.
736 (gomp_thread_start): Add gomp_team_barrier_wait call.
737 For non-nested case remove clearing of docked thread thr fields.
738 Use pool fields instead of global gomp_* variables. Use
739 gomp_barrier_wait_last when needed. Initialize ts.active_level.
740 Create tasks for each member thread.
741 (free_team): Only destroy team barrier, task_lock here and free it.
742 (gomp_free_thread): Free last_team if non-NULL.
743 (gomp_team_end): Call gomp_team_barrier_wait instead of
744 gomp_barrier_wait. For nested case call one extra
745 gomp_barrier_wait. Move here some destruction from free_team.
746 Call free_team on pool->last_team if any, rather than freeing
747 current team. Destroy work_share_list_free_lock ifndef
748 HAVE_SYNC_BUILTINS.
749 (gomp_new_icv): New function.
750 (gomp_threads, gomp_threads_size, gomp_threads_used,
751 gomp_threads_dock): Removed.
752 (gomp_thread_destructor): New variable.
753 (gomp_new_thread_pool, gomp_free_pool_helper, gomp_free_thread): New
754 functions.
755 (gomp_team_start): Create new pool if current thread doesn't have
756 one. Use pool fields instead of global gomp_* variables.
757 Initialize thread_pool field for new threads. Clear single_count.
758 Change last argument from ws to team, don't create
759 new team, set ts.work_share to &team->work_shares[0] and clear
760 ts.last_work_share. Don't clear ts.work_share_generation.
761 If number of threads changed, adjust atomically gomp_managed_threads.
762 Use gomp_init_task instead of gomp_new_task,
763 set thr->task to the corresponding implicit_task array entry.
764 Create tasks for each member thread. Initialize ts.level.
765 (initialize_team): Call pthread_key_create on
766 gomp_thread_destructor.
767 (team_destructor): New function.
768 (new_team): Removed.
769 (gomp_new_team): New function.
770 (free_team): Free gomp_work_share blocks chained through next_alloc,
771 instead of freeing work_shares and destroying work_share_lock.
772 (gomp_team_end): Call gomp_fini_work_share. If number of threads
773 changed, adjust atomically gomp_managed_threads. Use gomp_end_task.
774 * barrier.c (GOMP_barrier): Call gomp_team_barrier_wait instead
775 of gomp_barrier_wait.
776 * single.c (GOMP_single_copy_start): Call gomp_team_barrier_wait
777 instead of gomp_barrier_wait. Call gomp_work_share_init_done
778 if gomp_work_share_start returned true. Don't unlock ws->lock.
779 (GOMP_single_copy_end): Call gomp_team_barrier_wait instead
780 of gomp_barrier_wait.
781 (GOMP_single_start): Rewritten if HAVE_SYNC_BUILTINS. Call
782 gomp_work_share_init_done if gomp_work_share_start returned true.
783 Don't unlock ws->lock.
784 * work.c: Include stddef.h.
785 (free_work_share): Use work_share_list_free_lock instead
786 of atomic chaining ifndef HAVE_SYNC_BUILTINS. Add team argument.
787 Call gomp_fini_work_share and then either free ws if orphaned, or
788 put it into work_share_list_free list of the current team.
789 (alloc_work_share, gomp_init_work_share, gomp_fini_work_share): New
790 functions.
791 (gomp_work_share_start, gomp_work_share_end,
792 gomp_work_share_end_nowait): Rewritten.
793 * omp_lib.f90.in Change some tabs to spaces to prevent warnings.
794 (openmp_version): Set to 200805.
795 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
796 omp_sched_guided, omp_sched_auto): New parameters.
797 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
798 omp_set_max_active_levels, omp_get_max_active_levels,
799 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
800 omp_get_active_level): New interfaces.
801 * omp_lib.h.in (openmp_version): Set to 200805.
802 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
803 omp_sched_guided, omp_sched_auto): New parameters.
804 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
805 omp_set_max_active_levels, omp_get_max_active_levels,
806 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
807 omp_get_active_level): New externals.
808 * loop.c: Include limits.h.
809 (GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Handle
810 GFS_AUTO.
811 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start):
812 Likewise. Use gomp_icv.
813 (gomp_loop_static_start, gomp_loop_dynamic_start): Clear
814 ts.static_trip here.
815 (gomp_loop_static_start, gomp_loop_ordered_static_start): Call
816 gomp_work_share_init_done after gomp_loop_init. Don't unlock ws->lock.
817 (gomp_loop_dynamic_start, gomp_loop_guided_start): Call
818 gomp_work_share_init_done after gomp_loop_init. If HAVE_SYNC_BUILTINS,
819 don't unlock ws->lock, otherwise lock it.
820 (gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start): Call
821 gomp_work_share_init_done after gomp_loop_init. Lock ws->lock.
822 (gomp_parallel_loop_start): Call gomp_new_team instead of
823 gomp_new_work_share. Call gomp_loop_init on &team->work_shares[0].
824 Adjust gomp_team_start caller. Pass 0 as second argument to
825 gomp_resolve_num_threads.
826 (gomp_loop_init): For GFS_DYNAMIC, multiply ws->chunk_size by incr.
827 If adding ws->chunk_size nthreads + 1 times after end won't
828 overflow, set ws->mode to 1.
829 * libgomp_g.h (GOMP_loop_ull_static_start, GOMP_loop_ull_dynamic_start,
830 GOMP_loop_ull_guided_start, GOMP_loop_ull_runtime_start,
831 GOMP_loop_ull_ordered_static_start,
832 GOMP_loop_ull_ordered_dynamic_start,
833 GOMP_loop_ull_ordered_guided_start,
834 GOMP_loop_ull_ordered_runtime_start, GOMP_loop_ull_static_next,
835 GOMP_loop_ull_dynamic_next, GOMP_loop_ull_guided_next,
836 GOMP_loop_ull_runtime_next, GOMP_loop_ull_ordered_static_next,
837 GOMP_loop_ull_ordered_dynamic_next, GOMP_loop_ull_ordered_guided_next,
838 GOMP_loop_ull_ordered_runtime_next, GOMP_task, GOMP_taskwait): New
839 prototypes.
840 * libgomp.map: Export lock routines also @@OMP_2.0.
841 (GOMP_loop_ordered_dynamic_first,
842 GOMP_loop_ordered_guided_first, GOMP_loop_ordered_runtime_first,
843 GOMP_loop_ordered_static_first): Remove.
844 (GOMP_loop_ull_dynamic_next, GOMP_loop_ull_dynamic_start,
845 GOMP_loop_ull_guided_next, GOMP_loop_ull_guided_start,
846 GOMP_loop_ull_ordered_dynamic_next,
847 GOMP_loop_ull_ordered_dynamic_start,
848 GOMP_loop_ull_ordered_guided_next,
849 GOMP_loop_ull_ordered_guided_start,
850 GOMP_loop_ull_ordered_runtime_next,
851 GOMP_loop_ull_ordered_runtime_start,
852 GOMP_loop_ull_ordered_static_next,
853 GOMP_loop_ull_ordered_static_start,
854 GOMP_loop_ull_runtime_next, GOMP_loop_ull_runtime_start,
855 GOMP_loop_ull_static_next, GOMP_loop_ull_static_start,
856 GOMP_task, GOMP_taskwait): Export @@GOMP_2.0.
857 (omp_set_schedule, omp_get_schedule,
858 omp_get_thread_limit, omp_set_max_active_levels,
859 omp_get_max_active_levels, omp_get_level,
860 omp_get_ancestor_thread_num, omp_get_team_size, omp_get_active_level,
861 omp_set_schedule_, omp_set_schedule_8_,
862 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
863 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
864 omp_get_max_active_levels_, omp_get_level_,
865 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
866 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
867 New exports @@OMP_3.0.
868 * omp.h.in (omp_sched_t): New type.
869 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
870 omp_set_max_active_levels, omp_get_max_active_levels,
871 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
872 omp_get_active_level): New prototypes.
873 * env.c (gomp_spin_count_var, gomp_throttled_spin_count_var,
874 gomp_available_cpus, gomp_managed_threads, gomp_max_active_levels_var,
875 gomp_thread_limit_var, gomp_remaining_threads_count,
876 gomp_remaining_threads_lock): New variables.
877 (parse_spincount): New function.
878 (initialize_env): Call gomp_init_num_threads unconditionally.
879 Initialize gomp_available_cpus. Call parse_spincount,
880 initialize gomp_{,throttled_}spin_count_var
881 depending on presence and value of OMP_WAIT_POLICY and
882 GOMP_SPINCOUNT env vars. Handle GOMP_BLOCKTIME env var.
883 Handle OMP_WAIT_POLICY, OMP_MAX_ACTIVE_LEVELS,
884 OMP_THREAD_LIMIT, OMP_STACKSIZE env vars. Handle unit specification
885 for GOMP_STACKSIZE. Initialize gomp_remaining_threads_count and
886 gomp_remaining_threads_lock if needed. Use gomp_global_icv.
887 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
888 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
889 (gomp_global_icv): New.
890 (parse_schedule): Use it. Parse "auto".
891 (omp_set_num_threads): Use gomp_icv.
892 (omp_set_dynamic, omp_get_dynamic, omp_set_nested, omp_get_nested):
893 Likewise.
894 (omp_get_max_threads): Move from parallel.c.
895 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
896 omp_set_max_active_levels, omp_get_max_active_levels): New functions,
897 add ialias.
898 (parse_stacksize, parse_wait_policy): New functions.
899 * fortran.c: Rewrite lock wrappers, if symbol versioning provide
900 both wrappers for compatibility and new locks.
901 (omp_set_schedule, omp_get_schedule,
902 omp_get_thread_limit, omp_set_max_active_levels,
903 omp_get_max_active_levels, omp_get_level,
904 omp_get_ancestor_thread_num, omp_get_team_size,
905 omp_get_active_level): New ialias_redirect.
906 (omp_set_schedule_, omp_set_schedule_8_,
907 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
908 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
909 omp_get_max_active_levels_, omp_get_level_,
910 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
911 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
912 New functions.
913 * parallel.c: Include limits.h.
914 (gomp_resolve_num_threads): Add count argument. Rewritten.
915 (GOMP_parallel_start): Call gomp_new_team and pass that as last
916 argument to gomp_team_start. Pass 0 as second argument to
917 gomp_resolve_num_threads.
918 (GOMP_parallel_end): Decrease gomp_remaining_threads_count
919 if gomp_thread_limit_var != ULONG_MAX.
920 (omp_in_parallel): Implement using ts.active_level.
921 (omp_get_max_threads): Move to env.c.
922 (omp_get_level, omp_get_ancestor_thread_num,
923 omp_get_team_size, omp_get_active_level): New functions,
924 add ialias.
925 * sections.c (GOMP_sections_start): Call gomp_work_share_init_done
926 after gomp_sections_init. If HAVE_SYNC_BUILTINS, call
927 gomp_iter_dynamic_next instead of the _locked variant and don't take
928 lock around it, otherwise acquire it before calling
929 gomp_iter_dynamic_next_locked.
930 (GOMP_sections_next): If HAVE_SYNC_BUILTINS, call
931 gomp_iter_dynamic_next instead of the _locked variant and don't take
932 lock around it.
933 (GOMP_parallel_sections_start): Call gomp_new_team instead of
934 gomp_new_work_share. Call gomp_sections_init on &team->work_shares[0].
935 Adjust gomp_team_start caller. Pass count as second argument to
936 gomp_resolve_num_threads, don't adjust num_threads after the call.
937 Use gomp_icv.
938 * iter.c (gomp_iter_dynamic_next_locked): Don't multiply
939 ws->chunk_size by incr.
940 (gomp_iter_dynamic_next): Likewise. If ws->mode, use more efficient
941 code.
942 * libgomp_f.h.in (omp_lock_25_arg_t, omp_nest_lock_25_arg_t): New
943 types.
944 (omp_lock_25_arg, omp_nest_lock_25_arg): New macros.
945 (omp_check_defines): Check even the compat defines.
946 * config/linux/ptrlock.c: New file.
947 * config/linux/ptrlock.h: New file.
948 * config/linux/wait.h: New file.
949 * config/posix/ptrlock.c: New file.
950 * config/posix/ptrlock.h: New file.
951 * config/linux/bar.h (gomp_team_barrier_wait,
952 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
953 (gomp_team_barrier_set_task_pending,
954 gomp_team_barrier_clear_task_pending,
955 gomp_team_barrier_set_waiting_for_tasks,
956 gomp_team_barrier_waiting_for_tasks,
957 gomp_team_barrier_done): New inlines.
958 (gomp_barrier_t): Rewritten.
959 (gomp_barrier_state_t): New typedef.
960 (gomp_barrier_init, gomp_barrier_reinit, gomp_barrier_destroy,
961 gomp_barrier_wait_start): Rewritten.
962 (gomp_barrier_wait_end): Change second argument to
963 gomp_barrier_state_t.
964 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
965 inlines.
966 * config/linux/bar.c: Include wait.h instead of libgomp.h and
967 futex.h.
968 (gomp_barrier_wait_end): Rewritten.
969 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
970 gomp_team_barrier_wake, gomp_barrier_wait_last): New functions.
971 * config/posix/bar.h (gomp_barrier_t): Add generation field.
972 (gomp_barrier_state_t): New typedef.
973 (gomp_team_barrier_wait,
974 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
975 (gomp_barrier_wait_start): Or all but low 2 bits from generation
976 into the return value. Return gomp_barrier_state_t.
977 (gomp_team_barrier_set_task_pending,
978 gomp_team_barrier_clear_task_pending,
979 gomp_team_barrier_set_waiting_for_tasks,
980 gomp_team_barrier_waiting_for_tasks,
981 gomp_team_barrier_done): New inlines.
982 (gomp_barrier_wait_end): Change second argument to
983 gomp_barrier_state_t.
984 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
985 inlines.
986 * config/posix/bar.c (gomp_barrier_init): Clear generation field.
987 (gomp_barrier_wait_end): Change second argument to
988 gomp_barrier_state_t.
989 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
990 gomp_team_barrier_wake): New functions.
991 * config/linux/mutex.c: Include wait.h instead of libgomp.h and
992 futex.h.
993 (gomp_futex_wake, gomp_futex_wait): New variables.
994 (gomp_mutex_lock_slow): Call do_wait instead of futex_wait.
995 * config/linux/lock.c: Rewrite to make locks task owned,
996 for backwards compatibility provide the old entrypoints
997 if symbol versioning. Include wait.h instead of libgomp.h and
998 futex.h.
999 (gomp_set_nest_lock_25): Call do_wait instead of futex_wait.
1000 * config/posix95/lock.c: Rewrite to make locks task owned,
1001 for backwards compatibility provide the old entrypoints
1002 if symbol versioning.
1003 * config/posix/lock.c: Rewrite to make locks task owned,
1004 for backwards compatibility provide the old entrypoints
1005 if symbol versioning.
1006 * config/linux/proc.c (gomp_init_num_threads): Use gomp_global_icv.
1007 (get_num_procs, gomp_dynamic_max_threads): Use gomp_icv.
1008 * config/posix/proc.c, config/mingw32/proc.c: Similarly.
1009 * config/linux/powerpc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1010 (sys_futex0): Return error code.
1011 (futex_wake, futex_wait): If ENOSYS was returned, clear
1012 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1013 (cpu_relax, atomic_write_barrier): New static inlines.
1014 * config/linux/alpha/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1015 (futex_wake, futex_wait): If ENOSYS was returned, clear
1016 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1017 (cpu_relax, atomic_write_barrier): New static inlines.
1018 * config/linux/x86/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1019 (sys_futex0): Return error code.
1020 (futex_wake, futex_wait): If ENOSYS was returned, clear
1021 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1022 (cpu_relax, atomic_write_barrier): New static inlines.
1023 * config/linux/s390/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1024 (sys_futex0): Return error code.
1025 (futex_wake, futex_wait): If ENOSYS was returned, clear
1026 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1027 (cpu_relax, atomic_write_barrier): New static inlines.
1028 * config/linux/ia64/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1029 (sys_futex0): Return error code.
1030 (futex_wake, futex_wait): If ENOSYS was returned, clear
1031 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1032 (cpu_relax, atomic_write_barrier): New static inlines.
1033 * config/linux/sparc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1034 (sys_futex0): Return error code.
1035 (futex_wake, futex_wait): If ENOSYS was returned, clear
1036 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1037 (cpu_relax, atomic_write_barrier): New static inlines.
1038 * config/linux/sem.c: Include wait.h instead of libgomp.h and
1039 futex.h.
1040 (gomp_sem_wait_slow): Call do_wait instead of futex_wait.
1041 * config/linux/affinity.c: Assume HAVE_SYNC_BUILTINS.
1042 * config/linux/omp-lock.h (omp_lock_25_t, omp_nest_lock_25_t): New
1043 types.
1044 (omp_nest_lock_t): Change owner into void *, add lock field.
1045 * config/posix95/omp-lock.h: Include semaphore.h.
1046 (omp_lock_25_t, omp_nest_lock_25_t): New types.
1047 (omp_lock_t): Use sem_t instead of mutex if semaphores
1048 aren't broken.
1049 (omp_nest_lock_t): Likewise. Change owner to void *.
1050 * config/posix/omp-lock.h: Include semaphore.h.
1051 (omp_lock_25_t, omp_nest_lock_25_t): New types.
1052 (omp_lock_t): Use sem_t instead of mutex if semaphores
1053 aren't broken.
1054 (omp_nest_lock_t): Likewise. Add owner field.
1055
1056 2008-06-06 Jakub Jelinek <jakub@redhat.com>
1057
1058 * testsuite/libgomp.c/collapse-1.c: New test.
1059 * testsuite/libgomp.c/collapse-2.c: New test.
1060 * testsuite/libgomp.c/collapse-3.c: New test.
1061 * testsuite/libgomp.c/icv-1.c: New test.
1062 * testsuite/libgomp.c/icv-2.c: New test.
1063 * testsuite/libgomp.c/lib-2.c: New test.
1064 * testsuite/libgomp.c/lock-1.c: New test.
1065 * testsuite/libgomp.c/lock-2.c: New test.
1066 * testsuite/libgomp.c/lock-3.c: New test.
1067 * testsuite/libgomp.c/loop-4.c: New test.
1068 * testsuite/libgomp.c/loop-5.c: New test.
1069 * testsuite/libgomp.c/loop-6.c: New test.
1070 * testsuite/libgomp.c/loop-7.c: New test.
1071 * testsuite/libgomp.c/loop-8.c: New test.
1072 * testsuite/libgomp.c/loop-9.c: New test.
1073 * testsuite/libgomp.c/nested-3.c: New test.
1074 * testsuite/libgomp.c/nestedfn-6.c: New test.
1075 * testsuite/libgomp.c/sort-1.c: New test.
1076 * testsuite/libgomp.c/task-1.c: New test.
1077 * testsuite/libgomp.c/task-2.c: New test.
1078 * testsuite/libgomp.c/task-3.c: New test.
1079 * testsuite/libgomp.c/task-4.c: New test.
1080 * testsuite/libgomp.c++/c++.exp: Add libstdc++-v3 build includes
1081 to C++ testsuite default compiler options.
1082 * testsuite/libgomp.c++/collapse-1.C: New test.
1083 * testsuite/libgomp.c++/collapse-2.C: New test.
1084 * testsuite/libgomp.c++/ctor-10.C: New test.
1085 * testsuite/libgomp.c++/for-1.C: New test.
1086 * testsuite/libgomp.c++/for-2.C: New test.
1087 * testsuite/libgomp.c++/for-3.C: New test.
1088 * testsuite/libgomp.c++/for-4.C: New test.
1089 * testsuite/libgomp.c++/for-5.C: New test.
1090 * testsuite/libgomp.c++/loop-8.C: New test.
1091 * testsuite/libgomp.c++/loop-9.C: New test.
1092 * testsuite/libgomp.c++/loop-10.C: New test.
1093 * testsuite/libgomp.c++/task-1.C: New test.
1094 * testsuite/libgomp.c++/task-2.C: New test.
1095 * testsuite/libgomp.c++/task-3.C: New test.
1096 * testsuite/libgomp.c++/task-4.C: New test.
1097 * testsuite/libgomp.c++/task-5.C: New test.
1098 * testsuite/libgomp.c++/task-6.C: New test.
1099 * testsuite/libgomp.fortran/allocatable1.f90: New test.
1100 * testsuite/libgomp.fortran/allocatable2.f90: New test.
1101 * testsuite/libgomp.fortran/allocatable3.f90: New test.
1102 * testsuite/libgomp.fortran/allocatable4.f90: New test.
1103 * testsuite/libgomp.fortran/collapse1.f90: New test.
1104 * testsuite/libgomp.fortran/collapse2.f90: New test.
1105 * testsuite/libgomp.fortran/collapse3.f90: New test.
1106 * testsuite/libgomp.fortran/collapse4.f90: New test.
1107 * testsuite/libgomp.fortran/lastprivate1.f90: New test.
1108 * testsuite/libgomp.fortran/lastprivate2.f90: New test.
1109 * testsuite/libgomp.fortran/lib4.f90: New test.
1110 * testsuite/libgomp.fortran/lock-1.f90: New test.
1111 * testsuite/libgomp.fortran/lock-2.f90: New test.
1112 * testsuite/libgomp.fortran/nested1.f90: New test.
1113 * testsuite/libgomp.fortran/nestedfn4.f90: New test.
1114 * testsuite/libgomp.fortran/strassen.f90: New test.
1115 * testsuite/libgomp.fortran/tabs1.f90: New test.
1116 * testsuite/libgomp.fortran/tabs2.f: New test.
1117 * testsuite/libgomp.fortran/task1.f90: New test.
1118 * testsuite/libgomp.fortran/task2.f90: New test.
1119 * testsuite/libgomp.fortran/vla4.f90: Add dg-warning.
1120 * testsuite/libgomp.fortran/vla5.f90: Likewise.
1121 * testsuite/libgomp.c/pr26943-2.c: Likewise.
1122 * testsuite/libgomp.c/pr26943-3.c: Likewise.
1123 * testsuite/libgomp.c/pr26943-4.c: Likewise.
1124
1125 2008-05-23 Jakub Jelinek <jakub@redhat.com>
1126
1127 PR c++/36308
1128 * testsuite/libgomp.c++/ctor-11.C: New test.
1129 * testsuite/libgomp.c++/ctor-12.C: New test.
1130
1131 2008-05-15 Janis Johnson <janis187@us.ibm.com>
1132
1133 * testsuite/lib/libgomp.exp: Load torture-options.exp from gcc lib.
1134
1135 2008-05-07 Jakub Jelinek <jakub@redhat.com>
1136
1137 PR middle-end/36106
1138 * testsuite/libgomp.c/atomic-5.c: New test.
1139 * testsuite/libgomp.c/atomic-6.c: New test.
1140 * testsuite/libgomp.c/autopar-1.c: New test.
1141
1142 2008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1143
1144 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
1145 (LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
1146 (LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
1147 (LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
1148 * configure: Regenerate.
1149 * Makefile.in, testsuite/Makefile.in: Likewise.
1150
1151 2008-04-18 Paolo Bonzini <bonzini@gnu.org>
1152
1153 PR bootstrap/35457
1154 * aclocal.m4: Regenerate.
1155 * configure: Regenerate.
1156
1157 2008-03-18 Jakub Jelinek <jakub@redhat.com>
1158
1159 PR middle-end/35611
1160 * testsuite/libgomp.c/atomic-4.c: New test.
1161
1162 PR libgomp/35625
1163 * iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
1164 (gomp_iter_guided_next): Likewise.
1165 * testsuite/libgomp.c/pr35625.c: New test.
1166
1167 2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1168
1169 * aclocal.m4: Regenerate.
1170 * configure: Likewise.
1171 * Makefile.in: Likewise.
1172 * testsuite/Makefile.in: Likewise.
1173
1174 2008-03-13 Jakub Jelinek <jakub@redhat.com>
1175
1176 PR middle-end/35185
1177 * testsuite/libgomp.c++/pr35185.C: New test.
1178
1179 2008-03-12 Jakub Jelinek <jakub@redhat.com>
1180
1181 PR middle-end/35549
1182 * testsuite/libgomp.c/pr35549.c: New test.
1183
1184 2008-03-06 Jakub Jelinek <jakub@redhat.com>
1185
1186 * testsuite/libgomp.c/atomic-3.c: New test.
1187
1188 2008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1189
1190 PR fortran/33197
1191 * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
1192 .F08 file suffixes.
1193
1194 2008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
1195
1196 PR libgomp/33131
1197 * configure.ac: Add ACX_HEADER_STRING.
1198 * env.c: Include strings.h.
1199 * aclocal.m4: Regenerate.
1200 * config.h.in: Regenerate.
1201 * configure: Regenerate.
1202 * Makefile.in: Regenerate.
1203 * testsuite/Makefile.in: Regenerate.
1204
1205 2008-02-15 Jakub Jelinek <jakub@redhat.com>
1206
1207 PR middle-end/35196
1208 * testsuite/libgomp.c/pr35196.c: New test.
1209
1210 PR middle-end/35130
1211 * testsuite/libgomp.fortran/pr35130.f90: New test.
1212 * testsuite/libgomp.c/pr35130.c: New test.
1213
1214 2008-01-25 Jakub Jelinek <jakub@redhat.com>
1215
1216 PR middle-end/33880
1217 * testsuite/libgomp.c/pr33880.c: New test.
1218 * testsuite/libgomp.fortran/pr33880.f90: New test.
1219
1220 2008-01-24 David Edelsohn <edelsohn@gnu.org>
1221
1222 * configure: Regenerate.
1223
1224 2008-01-08 Jakub Jelinek <jakub@redhat.com>
1225
1226 * configure.ac: Move futex checking into ../config/futex.m4.
1227 * configure: Rebuilt.
1228 * aclocal.m4: Rebuilt.
1229 * Makefile.in: Rebuilt.
1230
1231 * configure.tgt: Rename have_tls to gcc_cv_have_tls to match
1232 2007-10-15 ../config/tls.m4 change.
1233
1234 2007-12-19 Jakub Jelinek <jakub@redhat.com>
1235
1236 PR c++/34513
1237 * testsuite/libgomp.c/pr34513.c: New test.
1238 * testsuite/libgomp.c++/pr34513.C: New test.
1239
1240 2007-12-17 Jack Howarth <howarth@bromo.med.uc.edu>
1241
1242 PR target/32765
1243 * testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.
1244
1245 2007-12-04 Jakub Jelinek <jakub@redhat.com>
1246
1247 * omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
1248
1249 2007-12-03 Jakub Jelinek <jakub@redhat.com>
1250
1251 * testsuite/libgomp.c/private-1.c: New test.
1252
1253 2007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
1254 Paolo Bonzini <bonzini@gnu.org>
1255
1256 * Makefile.am: Use space as vpath separator. Use 'vpath %'
1257 instead of 'VPATH ='.
1258 * Makefile.in: Regenerate.
1259
1260 2007-11-23 Matthias Klose <doko@ubuntu.com>
1261
1262 * configure.ac: Adjust makeinfo version check.
1263 * configure: Regenerate.
1264
1265 2007-11-10 Jakub Jelinek <jakub@redhat.com>
1266
1267 PR fortran/34020
1268 * testsuite/libgomp.fortran/pr34020.f90: New test.
1269
1270 2007-11-06 Jakub Jelinek <jakub@redhat.com>
1271
1272 PR c++/33894
1273 * testsuite/libgomp.c++/atomic-1.C: New test.
1274
1275 2007-10-25 Jakub Jelinek <jakub@redhat.com>
1276
1277 PR libgomp/33275
1278 * testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
1279 Make x and y integers rather than (implicit) reals. Add private (j)
1280 clause to the last omp parallel.
1281
1282 2007-10-15 Maciej W. Rozycki <macro@linux-mips.org>
1283
1284 * configure: Regenerate following changes to ../config/tls.m4.
1285
1286 2007-09-28 Jakub Jelinek <jakub@redhat.com>
1287
1288 * testsuite/libgomp.fortran/stack.f90: New test.
1289
1290 2007-09-10 Danny Smith <dannysmith@users.sourceforge.net>
1291
1292 * config/mingw32/proc.c: New file.
1293
1294 2007-09-05 Uros Bizjak <ubizjak@gmail.com>
1295
1296 * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
1297 (main): Use __get_cpuid to get i386 target fetaures.
1298 * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
1299 (main): Use __get_cpuid to get x86_64 target fetaures.
1300
1301 2007-08-15 Jack Howarth <howarth@bromo.med.uc.edu>
1302
1303 PR target/32765
1304 * testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
1305 * testsuite/libgomp.fortran/crayptr2.f90: Likwise.
1306
1307 2007-07-12 Jakub Jelinek <jakub@redhat.com>
1308
1309 PR fortran/32550
1310 * testsuite/libgomp.fortran/pr32550.f90: New test.
1311 * testsuite/libgomp.fortran/crayptr2.f90: New test.
1312
1313 2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
1314
1315 * aclocal.m4: Regenerated.
1316
1317 2007-07-05 Tobias Burnus <burnus@net-b.de>
1318
1319 PR fortran/32359
1320 * testsuite/libgomp.fortran/pr32359.f90: New.
1321
1322 2007-07-02 Jakub Jelinek <jakub@redhat.com>
1323
1324 PR libgomp/32468
1325 * sections.c (GOMP_parallel_sections_start): Only decrease
1326 number of threads to COUNT if dyn_var is true.
1327 * testsuite/libgomp.c/pr32468.c: New test.
1328
1329 2007-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1330
1331 PR libgomp/26308
1332 * config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
1333
1334 2007-06-21 Jakub Jelinek <jakub@redhat.com>
1335
1336 PR middle-end/32362
1337 * testsuite/libgomp.c/pr32362-1.c: New test.
1338 * testsuite/libgomp.c/pr32362-2.c: New test.
1339 * testsuite/libgomp.c/pr32362-3.c: New test.
1340
1341 2007-06-07 Jakub Jelinek <jakub@redhat.com>
1342
1343 * team.c (gomp_team_start): Fix setting up thread_attr
1344 stack size.
1345
1346 2007-06-02 Paolo Bonzini <bonzini@gnu.org>
1347
1348 * configure: Regenerate.
1349
1350 2007-05-23 Steve Ellcey <sje@cup.hp.com>
1351
1352 * Makefile.in: Regenerate.
1353 * configure: Regenerate.
1354 * aclocal.m4: Regenerate.
1355 * testsuite/Makefile.in: Regenerate.
1356
1357 2007-05-04 Jakub Jelinek <jakub@redhat.com>
1358
1359 * config/linux/proc.c: New file.
1360
1361 PR libgomp/28482
1362 * configure.tgt: Don't link with -Wl,-z,nodlopen even on Linux.
1363
1364 2007-04-19 Daniel Franke <franke.daniel@gmail.com>
1365
1366 * libgomp.texi (GOMP_CPU_AFFINITY): Updated.
1367
1368 2007-04-16 Matthias Klose <doko@debian.org>
1369
1370 * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
1371 flags if not building with -m64.
1372 * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
1373 flag for i?86-*-* targets, if current target matches -m64.
1374
1375 2007-04-14 Steve Ellcey <sje@cup.hp.com>
1376
1377 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.
1378 * Makefile.in: Regenerate.
1379
1380 2007-04-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1381
1382 PR testsuite/31369
1383 * testsuite/libgomp.c++/c++.exp: Don't use concat when setting
1384 ld_library_path.
1385 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1386
1387 2007-04-04 Jakub Jelinek <jakub@redhat.com>
1388
1389 * libgomp.h (gomp_cpu_affinity, gomp_cpu_affinity_len): New extern
1390 decls.
1391 (gomp_init_affinity, gomp_init_thread_affinity): New prototypes.
1392 * env.c (gomp_cpu_affinity, gomp_cpu_affinity_len): New variables.
1393 (parse_affinity): New function.
1394 (initialize_env): Call it and gomp_init_affinity.
1395 * team.c (gomp_team_start): If gomp_cpu_affinity != NULL,
1396 create new pthread_attr_t and call gomp_init_thread_affinity
1397 on it for each thread before passing the attribute to pthread_create.
1398 * config/linux/affinity.c: New file.
1399 * config/posix/affinity.c: New file.
1400 * configure.ac (HAVE_PTHREAD_AFFINITY_NP): New test.
1401 * configure: Rebuilt.
1402 * config.h.in: Rebuilt.
1403 * Makefile.am (libgomp_la_SOURCES): Add affinity.c.
1404 * Makefile.in: Rebuilt.
1405
1406 2007-03-23 Andreas Tobler <a.tobler@schweiz.org>
1407
1408 * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
1409 *-*-darwin*.
1410 * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
1411 and use it if found.
1412
1413 2007-03-18 Uros Bizjak <ubizjak@gmail.com>
1414
1415 * testsuite/config/default.exp: New file.
1416 * testsuite/lib/libgomp.exp: New file.
1417 * testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
1418 libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
1419 load_lib *, load_gcc_lib *): Move to libgomp.exp.
1420 (libgomp_load): Remove.
1421 * testsuite/lib/libgomp.exp (libgomp_init): Compute
1422 always_ld_library_path, not ld_library_path. Set additional_flags
1423 to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
1424 (target_compile): Do not call libgomp_init. Append lang_library_path
1425 and lang_link_flags to options.
1426 * testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2. Set
1427 ld_library_path from always_ld_library_path. Set LD_LIBRARY_PATH
1428 here.
1429 * testsuite/libgomp.c++/c++.exp: Set ld_library_path from
1430 always_ld_library_path. Set LD_LIBRARY_PATH here.
1431 * testsuite/libgomp.fortran/fortran.exp: Ditto.
1432 * testsuite/libgomp.c/atomic-1.c: Set dg-options to
1433 "-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
1434 CX8 flag.
1435 * testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
1436 lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
1437 * testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
1438 * testsuite/libgomp.c/pr29947-1.c: Ditto.
1439 * testsuite/libgomp.c/atomic-10.c: Ditto.
1440
1441 2007-03-21 Jakub Jelinek <jakub@redhat.com>
1442
1443 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
1444 dg-final cleanup-modules line.
1445 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
1446 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
1447 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
1448 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
1449 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
1450 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
1451 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
1452
1453 2007-03-18 Andreas Schwab <schwab@suse.de>
1454
1455 * acinclude.m4: Adjust regular expression for ld version
1456 extraction.
1457 * configure: Regenerate.
1458
1459 2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
1460
1461 * Makefile.am: Add install-pdf target as copied from
1462 automake v1.10 rules.
1463 * Makefile.in: Regenerate
1464
1465 2007-02-07 Jakub Jelinek <jakub@redhat.com>
1466
1467 PR libgomp/28486
1468 * configure: Regenerate.
1469
1470 PR c++/30703
1471 * testsuite/libgomp.c++/pr30703.C: New test.
1472
1473 2007-02-02 Jakub Jelinek <jakub@redhat.com>
1474
1475 Revert:
1476 2006-07-05 Eric Christopher <echristo@apple.com>
1477 * configure.ac: Depend addition of -pthread on host OS.
1478 * configure: Regenerate.
1479
1480 2007-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1481
1482 * libgomp.texi: Fix spacing after abbreviations.
1483
1484 2007-01-31 Daniel Franke <franke.daniel@gmail.com>
1485
1486 PR libgomp/30546
1487 * configure.ac: Add check for makeinfo
1488 * Makefile.am: Redefined target libgomp.info, build libgomp.info only
1489 if an appropiate version of makeinfo is found.
1490 * aclocal.m4: Regenerated.
1491 * configure: Regenerated.
1492 * Makefile.in: Regenerated.
1493 * testsuite/Makefile.in: Regenerated.
1494
1495 2007-01-29 Daniel Franke <franke.daniel@gmail.com>
1496
1497 PR libgomp/30540
1498 * libgomp.texi: More about implementation-dependent settings.
1499
1500 2007-01-26 Tobias Burnus <burnus@net-b.de>
1501
1502 * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
1503
1504 2007-01-24 Jakub Jelinek <jakub@redhat.com>
1505
1506 PR middle-end/30494
1507 * testsuite/libgomp.c/pr30494.c: New test.
1508
1509 2007-01-15 Tom Tromey <tromey@redhat.com>
1510
1511 * configure: Rebuilt.
1512 * configure.ac: Fixed comment.
1513
1514 2007-01-14 Daniel Franke <franke.daniel@gmail.com>
1515
1516 * libgomp.texi: Document implementation specific default values of
1517 environment variables.
1518
1519 2006-12-21 Daniel Franke <franke.daniel@gmail.com>
1520
1521 PR libgomp/28209
1522 * libgomp.texi: New file.
1523 * configure.ac: Add --enable-generated-files-in-srcdir option.
1524 * Makefile.am: Add info, dvi, pdf, html targets. On request, copy
1525 files to srcdir.
1526 * Makefile.in: Regenerated.
1527 * config.h.in: Regenerated.
1528 * testsuite/Makefile.in: Regenerated.
1529 * NOTES: Removed.
1530
1531 2006-12-04 Daniel Franke <franke.daniel@gmail.com>
1532
1533 PR libgomp/29949
1534 * env.c (omp_set_num_threads): Set illegal thread count to 1.
1535
1536 2006-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
1537
1538 * configure: Regenerate.
1539
1540 2006-12-04 Jakub Jelinek <jakub@redhat.com>
1541
1542 PR libgomp/29947
1543 * loop.c (gomp_loop_init): Make parameters signed. Set ws->end to
1544 start if there shouldn't be any loop iterations.
1545 (gomp_loop_ordered_static_start): Remove start == end test.
1546 * testsuite/libgomp.c/pr29947-1.c: New test.
1547 * testsuite/libgomp.c/pr29947-2.c: New test.
1548
1549 2006-12-02 Eric Botcazou <ebotcazou@libertysurf.fr>
1550
1551 * configure.tgt: Force initial-exec TLS model on Linux only.
1552
1553 2006-11-13 Daniel Jacobowitz <dan@codesourcery.com>
1554
1555 * configure: Regenerated.
1556
1557 2006-11-09 Uros Bizjak <ubizjak@gmail.com>
1558
1559 * env.c (parse_schedule): Reject out of range values.
1560 (parse_unsigned_long): Reject out of range, negative or zero values.
1561
1562 2006-10-29 Jakub Jelinek <jakub@redhat.com>
1563
1564 PR fortran/29629
1565 * testsuite/libgomp.fortran/pr29629.f90: New test.
1566
1567 2006-10-24 Eric Botcazou <ebotcazou@libertysurf.fr>
1568
1569 PR libgomp/29494
1570 * configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
1571 * config/posix95: New directory.
1572 * config/posix95/omp-lock.h: New file.
1573 * config/posix95/lock.c: Likewise.
1574
1575 2006-10-14 Geoffrey Keating <geoffk@apple.com>
1576
1577 * aclocal.m4: Regenerate.
1578 * configure: Regenerate.
1579
1580 2006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
1581
1582 * testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
1583 '<' to '<='.
1584
1585 2006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
1586
1587 * acinclude.m4 (HAVE_ATTRIBUTE_ALIAS): Remove __USER_LABEL_PREFIX__ from
1588 test.
1589 * configure: Regenerate.
1590 * fortran.c (ialias_redirect): Add __USER_LABEL_PREFIX__ to alias.
1591
1592 2006-09-26 Jakub Jelinek <jakub@redhat.com>
1593
1594 PR middle-end/25261
1595 PR middle-end/28790
1596 * testsuite/libgomp.c/nestedfn-4.c: New test.
1597 * testsuite/libgomp.c/nestedfn-5.c: New test.
1598 * testsuite/libgomp.fortran/nestedfn3.f90: New test.
1599
1600 PR fortran/29097
1601 * testsuite/libgomp.fortran/condinc1.f: New test.
1602 * testsuite/libgomp.fortran/condinc2.f: New test.
1603 * testsuite/libgomp.fortran/condinc3.f90: New test.
1604 * testsuite/libgomp.fortran/condinc4.f90: New test.
1605 * testsuite/libgomp.fortran/condinc1.inc: New file.
1606
1607 2006-09-18 Tom Tromey <tromey@redhat.com>
1608
1609 * configure: Rebuilt.
1610
1611 2006-09-13 Joseph S. Myers <joseph@codesourcery.com>
1612
1613 PR c/28768
1614 PR preprocessor/14634
1615 * configure.ac (HAVE_CLOCK_GETTIME): Add missing second argument
1616 to AC_DEFINE.
1617 * configure: Regenerate.
1618
1619 2006-09-08 Steven G. Kargl <kargl@gcc.gnu.org>
1620
1621 * testsuite/libgomp.fortran/reduction3.f90: Change
1622 -2147483648 to -huge(i)-1 to avoid overflow.
1623 * testsuite/libgomp.fortran/reduction4.f90: Change
1624 Z'ffffffff' to not(0) to avoid overflow.
1625
1626 2006-08-26 Joseph S. Myers <joseph@codesourcery.com>
1627
1628 PR libgomp/25938
1629 * Makefile.am (libsubincludedir): New.
1630 (nodist_include_HEADERS): Rename to nodist_libsubinclude_HEADERS.
1631 * Makefile.in: Regenerate.
1632
1633 2006-08-17 Jakub Jelinek <jakub@redhat.com>
1634
1635 PR libgomp/28725
1636 * env.c: Include ctype.h.
1637 (parse_schedule, parse_unsigned_long, parse_boolean): Allow
1638 leading and/or trailing whitespace and compare strings case
1639 insensitively.
1640
1641 2006-07-16 Jakub Jelinek <jakub@redhat.com>
1642
1643 PR fortran/28390
1644 * testsuite/libgomp.fortran/pr28390.f: New test.
1645
1646 2006-07-05 Eric Christopher <echristo@apple.com>
1647
1648 * configure.ac: Depend addition of -pthread on host OS.
1649 * configure: Regenerate.
1650
1651 2006-06-21 Jakub Jelinek <jakub@redhat.com>
1652
1653 * critical.c (GOMP_critical_name_start): Fix *pptr initialization
1654 when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
1655 defined.
1656
1657 2006-06-20 Jakub Jelinek <jakub@redhat.com>
1658
1659 PR libgomp/26175
1660 PR libgomp/26477
1661 * configure.ac: If neither --enable-linux-futex nor
1662 --disable-linux-futex is passed, determine the default by checking
1663 for compiling and/or running against NPTL. With --enable-linux-futex,
1664 check if SYS_gettid and SYS_futex are defined.
1665 * configure: Rebuilt.
1666
1667 2006-06-14 Richard Henderson <rth@redhat.com>
1668
1669 PR libgomp/28008
1670 * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
1671 undefined. Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
1672
1673 2006-06-09 Richard Henderson <rth@redhat.com>
1674
1675 * env.c (gomp_nthreads_var): Change to unsigned long.
1676 (gomp_run_sched_chunk): Likewise.
1677 (parse_unsigned_long): Rename from parse_num_threads and generalize.
1678 (initialize_env): Initialize gomp_thread_attr.
1679 * libgomp.h (gomp_nthreads_var): Update decl.
1680 (gomp_run_sched_chunk): Likewise.
1681 (gomp_thread_attr): Declare.
1682 * team.c (gomp_thread_attr): Export.
1683 (initialize_team): Don't initialize it.
1684
1685 2006-06-09 Jakub Jelinek <jakub@redhat.com>
1686
1687 PR fortran/27916
1688 * testsuite/libgomp.fortran/pr27916-1.f90: New test.
1689 * testsuite/libgomp.fortran/pr27916-2.f90: New test.
1690
1691 2006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1692
1693 * config/mingw32/time.c: New file.
1694 * configure.tgt: Use it.
1695
1696 2006-05-23 Carlos O'Donell <carlos@codesourcery.com>
1697
1698 * Makefile.am: Add install-html target. Add install-html to .PHONY
1699 * Makefile.in: Regenerate.
1700
1701 2006-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1702
1703 PR libgomp/27612
1704 * testsuite/libgomp.c/sections-1.c: Require sync_int_long.
1705 * testsuite/libgomp.c/critical-1.c: Likewise.
1706 * testsuite/libgomp.c/loop-1.c: Likewise.
1707 * testsuite/libgomp.c/loop-2.c: Likewise.
1708 * testsuite/libgomp.c/single-1.c: Likewise.
1709 * testsuite/libgomp.c/ordered-1.c: Likewise.
1710 * testsuite/libgomp.c/ordered-2.c: Likewise.
1711
1712 2006-05-15 Jakub Jelinek <jakub@redhat.com>
1713
1714 PR middle-end/27416
1715 * libgomp.fortran/pr27416-1.f90: New test.
1716
1717 2006-05-03 Jakub Jelinek <jakub@redhat.com>
1718
1719 PR fortran/27395
1720 * testsuite/libgomp.fortran/pr27395-1.f90: New test.
1721 * testsuite/libgomp.fortran/pr27395-2.f90: New test.
1722
1723 2006-05-02 Jakub Jelinek <jakub@redhat.com>
1724
1725 PR c++/26943
1726 * testsuite/libgomp.c/pr26943-1.c: New test.
1727 * testsuite/libgomp.c/pr26943-2.c: New test.
1728 * testsuite/libgomp.c/pr26943-3.c: New test.
1729 * testsuite/libgomp.c/pr26943-4.c: New test.
1730 * testsuite/libgomp.c++/pr27337.C: Remove barrier.
1731 * testsuite/libgomp.c++/pr26943.C: New test.
1732
1733 2006-05-02 Jakub Jelinek <jakub@redhat.com>
1734
1735 PR middle-end/27337
1736 * testsuite/libgomp.c++/pr27337.C: New test.
1737
1738 2006-04-26 Jakub Jelinek <jakub@redhat.com>
1739
1740 PR c/26171
1741 * testsuite/libgomp.c/pr26171.c: New test.
1742
1743 2006-04-25 Richard Henderson <rth@redhat.com>
1744
1745 PR libgomp/25865
1746 * configure.ac: Use GCC_CHECK_TLS.
1747 * acinclude.m4 (LIBGOMP_CHECK_TLS): Remove.
1748 * Makefile.in, aclocal.m4, configure: Regenerate.
1749
1750 2006-04-10 Matthias Klose <doko@debian.org>
1751
1752 * testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
1753 directory names containing underscores.
1754
1755 2006-03-21 Jakub Jelinek <jakub@redhat.com>
1756
1757 PR c++/26691
1758 * testsuite/libgomp.c++/pr26691.C: New test.
1759
1760 2006-03-13 Jakub Jelinek <jakub@redhat.com>
1761
1762 * testsuite/libgomp.fortran/retval2.f90: New test.
1763
1764 2006-03-09 Diego Novillo <dnovillo@redhat.com>
1765
1766 * testsuite/libgomp.c++: New directory.
1767
1768 2006-02-25 Shantonu Sen <ssen@opendarwin.org>
1769
1770 * config/posix/sem.h: Define BROKEN_POSIX_SEMAPHORES functions.
1771 * config/posix/sem.c: Implement the above.
1772
1773 2006-02-25 Andreas Tobler <a.tobler@schweiz.ch>
1774
1775 * configure.ac (HAVE_BROKEN_POSIX_SEMAPHORES): Check for darwin and
1776 define HAVE_BROKEN_POSIX_SEMAPHORES.
1777 * configure: Rebuilt.
1778 * config.h.in: Rebuilt.
1779
1780 2006-02-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1781
1782 PR bootstrap/26161
1783 * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment
1784 for the other pthread check.
1785 * configure: Regenerate.
1786 * config.h.in: Regenerate.
1787
1788 2006-02-15 Jakub Jelinek <jakub@redhat.com>
1789
1790 PR libgomp/25938
1791 PR libgomp/25984
1792 * Makefile.am (fincludedir): New variable.
1793 (nodist_include_HEADERS): Remove Fortran files.
1794 (nodist_finclude_HEADERS): New variable.
1795 * Makefile.in: Regenerated.
1796
1797 2006-02-13 Jakub Jelinek <jakub@redhat.com>
1798
1799 * testsuite/libgomp.fortran/vla7.f90: Add -w to options.
1800 Remove tests for returning assumed character length arrays.
1801
1802 2006-02-12 Roger Sayle <roger@eyesopen.com>
1803 John David Anglin <dave@hiauly1.hia.nrc.ca>
1804
1805 PR libgomp/25936
1806 * configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.
1807
1808 2006-02-08 Ulrich Weigand <uweigand@de.ibm.com>
1809
1810 * testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
1811
1812 2006-02-07 Eric Botcazou <ebotcazou@libertysurf.fr>
1813
1814 * testsuite/lib/libgomp-dg.exp (libgomp_init): Compute multilib related
1815 part of LD_LIBRARY_PATH manually.
1816
1817 2006-02-03 H.J. Lu <hongjiu.lu@intel.com>
1818
1819 PR libgomp/25852
1820 * testsuite/lib/libgomp-dg.exp (blddir): Set it in
1821 libgomp_init.
1822
1823 2005-01-25 Paolo Bonzini <bonzini@gnu.org>
1824
1825 PR libgomp/25884
1826 * Makefile.am (omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Remove.
1827 * configure.ac (PERL): Don't set.
1828 (gstdint.h, omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Create here.
1829 (OMP_LOCK_SIZE, OMP_LOCK_ALIGN, OMP_LOCK_KIND, OMP_NEST_LOCK_SIZE,
1830 OMP_NEST_LOCK_ALIGN, OMP_NEST_LOCK_KIND): New substitutions.
1831 * omp.h.in: Wrap the new configure substitutions with @ characters.
1832 * omp_lib.h.in, omp_lib.f90.in, libgomp_f.h.in: Likewise.
1833 * aclocal.m4, configure, Makefile.in: Regenerate.
1834 * mkomp_h.pl: Delete.
1835
1836 2005-01-24 Paolo Bonzini <bonzini@gnu.org>
1837
1838 PR libgomp/25259
1839 * configure.ac: Use GCC_HEADER_STDINT.
1840 * libgomp.h: Include gstdint.h.
1841 * libgomp_f.h.in: Don't include stdint.h or inttypes.h.
1842 * configure, Makefile.in, testsuite/Makefile.in, aclocal.m4: Rebuild.
1843
1844 2006-01-24 Richard Henderson <rth@redhat.com>
1845
1846 PR libgomp/25942
1847 * configure.ac: Add AM_MAINTAINER_MODE.
1848 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in: Rebuild.
1849
1850 2006-01-24 Diego Novillo <dnovillo@redhat.com>
1851
1852 * Makefile.in: Regenerate.
1853 * testsuite/Makefile.in: Regenerate.
1854 * aclocal.m4: Regenerate.
1855
1856 2006-01-23 Andreas Tobler <a.tobler@schweiz.ch>
1857
1858 * config/posix/proc.c: Conditional include of sys/loadavg.h for
1859 Solaris.
1860 * configure.ac: Add check for loadavg.h.
1861 (link_gomp): Adjust comment.
1862 * configure: Regenerate.
1863 * config.h.in: Regenerate.
1864
1865 2006-01-21 Steve Ellcey <sje@cup.hp.com>
1866
1867 PR libgomp/25877
1868 * configure.ac: Remove check for alloca.h.
1869 * configure: Regenerate.
1870 * config.h.in: Regenerate.
1871 * libgomp.h: define gomp_alloca to be __builtin_alloca.
1872 * team.c: Remove use of alloca.h.
1873 Call gomp_alloca instead of alloca.
1874
1875 2006-01-20 Steve Ellcey <sje@cup.hp.com>
1876
1877 PR libgomp/25877
1878 * team.c: Add include of alloca.h.
1879 * configure.ac: Add check for alloca.h.
1880 * configure: Regenerate.
1881 * config.h.in: Regenerate.
1882
1883 2006-01-17 Jakub Jelinek <jakub@redhat.com>
1884
1885 PR fortran/25219
1886 * testsuite/libgomp.fortran/pr25219.f90: New test.
1887
1888 2005-12-05 Uros Bizjak <uros@kss-loka.si>
1889
1890 * testsuite/libgomp.c/pr24455.c, testsuite/libgomp.c/copyin-1.c,
1891 testsuite/libgomp.c/copyin-2.c, testsuite/libgomp.c/copyin-3.c,
1892 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
1893 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
1894 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455.C,
1895 testsuite/libgomp.fortran/threadprivate1.f90,
1896 testsuite/libgomp.fortran/threadprivate2.f90,
1897 testsuite/libgomp.fortran/threadprivate3.f90,
1898 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
1899 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
1900 testsuite/libgomp.fortran/omp_parse3.f90: Change required
1901 effective-target to TLS runtime.
1902
1903 * testsuite/libgomp.fortran/pr25162.f: Require
1904 effective-target TLS runtime.
1905
1906 2005-12-01 Jakub Jelinek <jakub@redhat.com>
1907
1908 * testsuite/libgomp.fortran/nestedfn2.f90: New test.
1909 * testsuite/libgomp.c/nestedfn-3.c: New test.
1910
1911 2005-11-30 Jakub Jelinek <jakub@redhat.com>
1912
1913 PR fortran/25162
1914 * testsuite/libgomp.fortran/pr25162.f: New test.
1915
1916 2005-11-28 Jakub Jelinek <jakub@redhat.com>
1917
1918 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Fall back to
1919 CLOCK_REALTIME if clock_* (CLOCK_MONOTONIC, &ts) call failed.
1920
1921 2005-11-25 Jakub Jelinek <jakub@redhat.com>
1922
1923 * alloc.c, barrier.c, critical.c, env.c, error.c, fortran.c, iter.c,
1924 libgomp.h, libgomp_f.h.in, libgomp_g.h, loop.c, mkomp_h.pl, omp.h.in,
1925 omp_lib.f90.in, omp_lib.h.in, ordered.c, parallel.c, sections.c,
1926 single.c, team.c, work.c, config/linux/alpha/futex.h,
1927 config/linux/bar.c, config/linux/bar.h, config/linux/ia64/futex.h,
1928 config/linux/lock.c, config/linux/mutex.c, config/linux/mutex.h,
1929 config/linux/powerpc/futex.h, config/linux/s390/futex.h,
1930 config/linux/sem.c, config/linux/sem.h, config/linux/sparc/futex.h,
1931 config/linux/x86/futex.h, config/posix/bar.c, config/posix/bar.h,
1932 config/posix/lock.c, config/posix/mutex.h, config/posix/proc.c,
1933 config/posix/sem.c, config/posix/sem.h, config/posix/time.c: Update
1934 FSF address.
1935
1936 2005-11-18 Jakub Jelinek <jakub@redhat.com>
1937
1938 * Makefile.am: Move libgomp_f.h from nodist_include_HEADERS
1939 to nodist_noinst_HEADERS.
1940 * Makefile.in: Rebuilt.
1941
1942 * config/posix/omp-lock.h (omp_nest_lock_t): Change into struct,
1943 add integer count field.
1944 * config/posix/lock.c (omp_destroy_nest_lock): Adjust for
1945 omp_nest_lock_t type change.
1946 (omp_init_nest_lock): Likewise. Initialize count to 0.
1947 (omp_set_nest_lock): Adjust for omp_nest_lock_t type change.
1948 Increment count.
1949 (omp_unset_nest_lock): Adjust for omp_nest_lock_t type change.
1950 Decrement count.
1951 (omp_test_nest_lock): Adjust for omp_nest_lock_t type change.
1952 Increment count if successful and return the new nesting level.
1953 * config/linux/lock.c (omp_test_nest_lock): Return new nesting level.
1954 * omp_lib.f90.in (omp_test_lock): Fix LOCK argument type.
1955 * testsuite/libgomp.c/lib-1.c: New test.
1956 * testsuite/libgomp.fortran/lib1.f90: New test.
1957 * testsuite/libgomp.fortran/lib2.f: New test.
1958 * testsuite/libgomp.fortran/lib3.f: New test.
1959
1960 2005-11-17 Richard Henderson <rth@redhat.com>
1961
1962 PR 24845
1963 * Makefile.am (nodist_toolexeclib_HEADERS): New.
1964 * configure.ac (link_gomp): New. Substitute it.
1965 (AC_CONFIG_FILES): Add libgomp.spec.
1966 * libgomp.spec.in: New file.
1967 * Makefile.in, testsuite/Makefile.in, configure: Rebuild.
1968 * testsuite/lib/libgomp-dg.exp: Add -B${blddir}/ to flags.
1969
1970 2005-11-18 Jakub Jelinek <jakub@redhat.com>
1971
1972 * testsuite/libgomp.fortran/reduction1.f90: Adjust for
1973 reduction(-:var) behaving the same as reduction(+:var).
1974 * testsuite/libgomp.c/reduction-4.c: New test.
1975
1976 2005-11-15 Uros Bizjak <uros@kss-loka.si>
1977
1978 * testsuite/libgomp.c/pr24455-1.c, testsuite/libgomp.c/pr24455.c,
1979 testsuite/libgomp.c/copyin-1.c, testsuite/libgomp.c/copyin-2.c,
1980 testsuite/libgomp.c/copyin-3.c,
1981 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
1982 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
1983 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455-1.C,
1984 testsuite/libgomp.c++/pr24455.C,
1985 testsuite/libgomp.fortran/threadprivate1.f90,
1986 testsuite/libgomp.fortran/threadprivate2.f90,
1987 testsuite/libgomp.fortran/threadprivate3.f90,
1988 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
1989 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
1990 testsuite/libgomp.fortran/omp_parse3.f90: Require
1991 effective-target TLS.
1992
1993 2005-11-14 Diego Novillo <dnovillo@redhat.com>
1994
1995 * HEADER: Remove.
1996
1997 2005-11-13 Jakub Jelinek <jakub@redhat.com>
1998
1999 PR libgomp/24797
2000 * team.c (initialize_team): Pass NULL rather than free as
2001 pthread_key_create destructor. Initialize thread specific data
2002 pointer in initial thread to a static local variable rather than
2003 malloced memory.
2004
2005 2005-11-11 Uros Bizjak <uros@kss-loka.si>
2006
2007 * testsuite/lib/libgomp-dg.exp: Locate libgcc.a and append
2008 its location to ld_library_path.
2009
2010 2005-11-10 Diego Novillo <dnovillo@redhat.com>
2011
2012 * testsuite/libgomp.c/c.exp: Rename from dg.exp.
2013
2014 2005-11-10 Diego Novillo <dnovillo@redhat.com>
2015
2016 * testsuite/libgomp.c: Rename from libgomp.dg.
2017
2018 2005-11-09 Diego Novillo <dnovillo@redhat.com>
2019
2020 * testsuite/libgomp.c++/pr24455.C: Add copyin clause for
2021 threadprivate variable 'i'.
2022
2023 2005-11-09 Jakub Jelinek <jakub@redhat.com>
2024
2025 * config/linux/s390/futex.h: New file.
2026 * configure.tgt: Use it.
2027
2028 * testsuite/libgomp.fortran/omp_parse4.f90: Move n initialization
2029 before the parallel.
2030
2031 2005-11-08 Jakub Jelinek <jakub@redhat.com>
2032
2033 PR c++/24734
2034 * testsuite/libgomp.c++/master-1.C: New test.
2035
2036 2005-11-07 Jakub Jelinek <jakub@redhat.com>
2037
2038 * testsuite/libgomp.dg/copyin-3.c: New test.
2039
2040 2005-11-07 Jakub Jelinek <jakub@redhat.com>
2041
2042 * testsuite/libgomp.fortran/retval1.f90: New test.
2043 * testsuite/libgomp.fortran/vla7.f90: New test.
2044
2045 2005-11-06 Jakub Jelinek <jakub@redhat.com>
2046
2047 * testsuite/libgomp.fortran/vla2.f90: New test.
2048 * testsuite/libgomp.fortran/vla3.f90: New test.
2049 * testsuite/libgomp.fortran/vla4.f90: New test.
2050 * testsuite/libgomp.fortran/vla5.f90: New test.
2051 * testsuite/libgomp.fortran/vla6.f90: New test.
2052
2053 2005-11-01 Jakub Jelinek <jakub@redhat.com>
2054
2055 * config/linux/sparc/futex.h: New file.
2056 * configure.tgt: Use it.
2057 * testsuite/lib/libgomp-dg.exp: Use -mcpu=v9 for sparc testing.
2058
2059 * critical.c: Include stdlib.h.
2060 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Avoid warnings about
2061 ignoring return value.
2062 * configure.ac: Don't put -Wc,-pthread into XCFLAGS until after
2063 LIBGOMP_CHECK_SYNC_BUILTINS check.
2064 * configure: Rebuilt.
2065
2066 2005-10-31 Jakub Jelinek <jakub@redhat.com>
2067
2068 * testsuite/libgomp.fortran/vla1.f90: New test.
2069
2070 2005-10-31 Richard Henderson <rth@redhat.com>
2071
2072 * testsuite/libgomp.fortran/character2.f90: Fix race condition
2073 setting 's' in different threads.
2074
2075 2005-10-31 Jakub Jelinek <jakub@redhat.com>
2076
2077 * libgomp.h (attribute_hidden, ialias): Define.
2078 * config/posix/proc.c (omp_get_num_procs): Add ialias.
2079 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Likewise.
2080 * config/posix/lock.c (omp_init_lock, omp_init_nest_lock,
2081 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
2082 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
2083 omp_test_lock, omp_test_nest_lock): Likewise.
2084 * config/linux/lock.c (omp_init_lock, omp_init_nest_lock,
2085 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
2086 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
2087 omp_test_lock, omp_test_nest_lock): Likewise.
2088 * env.c (omp_set_dynamic, omp_set_nested, omp_set_num_threads,
2089 omp_get_dynamic, omp_get_nested): Likewise.
2090 * parallel.c (omp_get_num_threads, omp_get_max_threads,
2091 omp_get_thread_num, omp_in_parallel): Likewise.
2092 * fortran.c (ialias_redirect): Define.
2093 (omp_init_lock, omp_init_nest_lock, omp_destroy_lock,
2094 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock,
2095 omp_unset_lock, omp_unset_nest_lock, omp_test_lock,
2096 omp_test_nest_lock, omp_set_dynamic, omp_set_nested,
2097 omp_set_num_threads, omp_get_dynamic, omp_get_nested,
2098 omp_in_parallel, omp_get_max_threads, omp_get_num_procs,
2099 omp_get_num_threads, omp_get_thread_num, omp_get_wtick,
2100 omp_get_wtime): Add ialias_redirect.
2101
2102 2005-10-30 Jakub Jelinek <jakub@redhat.com>
2103
2104 * fortran.c: Include stdlib.h.
2105
2106 2005-10-29 Jakub Jelinek <jakub@redhat.com>
2107
2108 * Makefile.am (env.o, env.lo): Depend on libgomp_f.h.
2109 * Makefile.in: Regenerated.
2110
2111 2005-10-28 Jakub Jelinek <jakub@redhat.com>
2112
2113 * mkomp_h.pl: Remove all -Wc, option prefixes in $COMPILE.
2114 * libgomp_f.h.in (omp_check_defines): New function.
2115 * env.c: Include libgomp_f.h.
2116 (initialize_env): Call omp_check_defines.
2117
2118 * testsuite/libgomp.dg/copyin-2.c: New test.
2119 * testsuite/libgomp.c++/copyin-2.C: New test.
2120 * testsuite/libgomp.fortran/threadprivate3.f90: New test.
2121
2122 * testsuite/libgomp.fortran/threadprivate2.f90: New test.
2123 * testsuite/libgomp.fortran/sharing2.f90: New test.
2124
2125 * testsuite/libgomp.dg/copyin-1.c: New test.
2126 * testsuite/libgomp.c++/copyin-1.C: New test.
2127
2128 2005-10-26 Jakub Jelinek <jakub@redhat.com>
2129
2130 * testsuite/libgomp.fortran/crayptr1.f90: New test.
2131
2132 * testsuite/libgomp.fortran/workshare1.f90: New test.
2133
2134 * libgomp.fortran/appendix-a/a.28.5.f90: Change into compile
2135 only test.
2136 * libgomp.fortran/sharing1.f90: New test.
2137
2138 2005-10-24 Jakub Jelinek <jakub@redhat.com>
2139
2140 PR c++/24502
2141 * testsuite/libgomp.c++/loop-7.C: New test.
2142
2143 * testsuite/libgomp.dg/nestedfn-2.c: New test.
2144
2145 * testsuite/libgomp.dg/nestedfn-1.c: New test.
2146 * testsuite/libgomp.fortran/reduction6.f90: New test.
2147 * testsuite/libgomp.fortran/nestedfn1.f90: New test.
2148
2149 2005-10-23 Richard Henderson <rth@redhat.com>
2150
2151 * testsuite/libgomp.c++/ctor-1.C: New.
2152 * testsuite/libgomp.c++/ctor-2.C: New.
2153 * testsuite/libgomp.c++/ctor-3.C: New.
2154 * testsuite/libgomp.c++/ctor-4.C: New.
2155 * testsuite/libgomp.c++/ctor-5.C: New.
2156 * testsuite/libgomp.c++/ctor-6.C: New.
2157 * testsuite/libgomp.c++/ctor-7.C: New.
2158 * testsuite/libgomp.c++/ctor-8.C: New.
2159 * testsuite/libgomp.c++/ctor-9.C: New.
2160
2161 2005-10-21 Diego Novillo <dnovillo@redhat.com>
2162
2163 PR 24455
2164 * testsuite/libgomp.c++/pr24455-1.C: New test.
2165 * testsuite/libgomp.c++/pr24455.C: New test.
2166 * testsuite/libgomp.dg/pr24455-1.c: New test.
2167 * testsuite/libgomp.dg/pr24455.c: New test.
2168
2169 2005-10-20 Richard Henderson <rth@redhat.com>
2170
2171 * testsuite/libgomp.c++/loop-6.C: New.
2172 * testsuite/libgomp.dg/loop-3.c: New.
2173
2174 2005-10-20 Jakub Jelinek <jakub@redhat.com>
2175
2176 * testsuite/libgomp.fortran/jacobi.f: Don't make i and j
2177 explicitly private.
2178 * testsuite/libgomp.fortran/omp_parse1.f90 (test_do): Make i
2179 explicitly shared.
2180
2181 2005-10-19 Diego Novillo <dnovillo@redhat.com>
2182
2183 * testsuite/libgomp.fortran/jacobi.f: New test.
2184
2185 2005-10-19 Richard Henderson <rth@redhat.com>
2186
2187 * configure.tgt (i?86-linux): Default to with_arch instead of
2188 CFLAGS. Add -mtune to match target_cpu.
2189 (x86_64-linux): Tune to i686.
2190
2191 * fortran.c (omp_test_nest_lock_): Fix typo.
2192
2193 2005-10-19 Jakub Jelinek <jakub@redhat.com>
2194
2195 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
2196 gomp_ordered_sync): Do nothing if team->nthreads == 1.
2197 * testsuite/libgomp.dg/ordered-3.c: New test.
2198
2199 * testsuite/libgomp.dg/appendix-a/a.18.1.c: Remove unconditional abort.
2200 Remove volatile keyword.
2201
2202 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Reorder variables
2203 in COMMON block to avoid warnings on 64-bit targets.
2204
2205 2005-10-18 Diego Novillo <dnovillo@redhat.com>
2206
2207 * testsuite/libgomp.dg/shared-3.c: New test.
2208
2209 2005-10-18 Jakub Jelinek <jakub@redhat.com>
2210
2211 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: Removed.
2212 * testsuite/libgomp.fortran/reduction5.f90: New test.
2213
2214 2005-10-18 Jakub Jelinek <jakub@redhat.com>
2215
2216 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Add -ffixed-form to
2217 dg-options.
2218 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise. Enable
2219 flush loop now that __sync_synchronize has proper memory barrier.
2220 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: Fix a typo.
2221 Add -ffixed-form to dg-options.
2222
2223 2005-10-17 Diego Novillo <dnovillo@redhat.com>
2224
2225 * testsuite/libgomp.fortran/fortran.exp: Also gather tests
2226 from subdirectories.
2227 * testsuite/libgomp.fortran/appendix-a/a.15.1.f90: New test.
2228 * testsuite/libgomp.fortran/appendix-a/a.16.1.f90: New test.
2229 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: New test.
2230 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: New test.
2231 * testsuite/libgomp.fortran/appendix-a/a.2.1.f90: New test.
2232 * testsuite/libgomp.fortran/appendix-a/a.21.1.f90: New test.
2233 * testsuite/libgomp.fortran/appendix-a/a.22.7.f90: New test.
2234 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: New test.
2235 * testsuite/libgomp.fortran/appendix-a/a.26.1.f90: New test.
2236 * testsuite/libgomp.fortran/appendix-a/a.28.1.f90: New test.
2237 * testsuite/libgomp.fortran/appendix-a/a.28.2.f90: New test.
2238 * testsuite/libgomp.fortran/appendix-a/a.28.3.f90: New test.
2239 * testsuite/libgomp.fortran/appendix-a/a.28.4.f90: New test.
2240 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: New test.
2241 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: New test.
2242 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: New test.
2243 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: New test.
2244 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: New test.
2245 * testsuite/libgomp.fortran/appendix-a/a.33.3.f90: New test.
2246 * testsuite/libgomp.fortran/appendix-a/a.38.1.f90: New test.
2247 * testsuite/libgomp.fortran/appendix-a/a.39.1.f90: New test.
2248 * testsuite/libgomp.fortran/appendix-a/a.4.1.f90: New test.
2249 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: New test.
2250 * testsuite/libgomp.fortran/appendix-a/a.5.1.f90: New test.
2251 * testsuite/libgomp.fortran/appendix-a/a10.1.f90: New test.
2252
2253 2005-10-17 Jakub Jelinek <jakub@redhat.com>
2254
2255 * testsuite/libgomp.dg/dg.exp: Only unset lang_* if
2256 lang_library_path exists. Use find instead of glob to gather tests.
2257 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: Removed.
2258
2259 2005-10-17 Diego Novillo <dnovillo@redhat.com>
2260
2261 * testsuite/libgomp.dg/appendix-a/a.15.1.c: New test.
2262 * testsuite/libgomp.dg/appendix-a/a.16.1.c: New test.
2263 * testsuite/libgomp.dg/appendix-a/a.18.1.c: New test.
2264 * testsuite/libgomp.dg/appendix-a/a.19.1.c: New test.
2265 * testsuite/libgomp.dg/appendix-a/a.2.1.c: New test.
2266 * testsuite/libgomp.dg/appendix-a/a.21.1.c: New test.
2267 * testsuite/libgomp.dg/appendix-a/a.26.1.c: New test.
2268 * testsuite/libgomp.dg/appendix-a/a.29.1.c: New test.
2269 * testsuite/libgomp.dg/appendix-a/a.3.1.c: New test.
2270 * testsuite/libgomp.dg/appendix-a/a.39.1.c: New test.
2271 * testsuite/libgomp.dg/appendix-a/a.4.1.c: New test.
2272 * testsuite/libgomp.dg/appendix-a/a.5.1.c: New test.
2273 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: New file.
2274
2275 2005-10-15 Jakub Jelinek <jakub@redhat.com>
2276
2277 * testsuite/libgomp.dg/vla-1.c: New test.
2278
2279 * testsuite/libgomp.fortran/reference2.f90: New test.
2280
2281 * testsuite/libgomp.fortran/character2.f90: Remove explicit
2282 declaration of omp_get_thread_num.
2283 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise. Add
2284 use omp_lib.
2285
2286 * testsuite/libgomp.fortran/reduction1.f90: New test.
2287 * testsuite/libgomp.fortran/reduction2.f90: New test.
2288 * testsuite/libgomp.fortran/reduction3.f90: New test.
2289 * testsuite/libgomp.fortran/reduction4.f90: New test.
2290
2291 2005-10-13 Richard Henderson <rth@redhat.com>
2292
2293 * Makefile.am (libgomp_la_SOURCES): Add bar.c.
2294 * Makefile.in: Regenerate.
2295 * barrier.c (GOMP_barrier): Use gomp_barrier_wait.
2296 * libgomp.h: Include bar.h.
2297 (struct gomp_barrier): Remove.
2298 (struct gomp_team): Add barrier. Replace master_barrier with
2299 master_release. Replace threads with ordered_release.
2300 (struct gomp_thread): Replace barrier with release.
2301 * ordered.c (gomp_ordered_first): Update for ordered_release change.
2302 (gomp_ordered_last, gomp_ordered_next, gomp_ordered_static_init,
2303 gomp_ordered_static_next, gomp_ordered_sync): Likewise.
2304 * single.c (GOMP_single_copy_start): Use gomp_barrier_wait.
2305 (GOMP_single_copy_end): Likewise.
2306 * team.c (gomp_threads_dock): New.
2307 (gomp_barrier_init, gomp_barrier_destroy): Remove.
2308 (gomp_thread_start): Use gomp_barrier_wait.
2309 (new_team, free_team): Update for gomp_team changes.
2310 (gomp_team_start): Use gomp_barrier_wait and gomp_barrier_reinit.
2311 (gomp_team_end): Use gomp_barrier_wait.
2312 (initialize_team): Update for gomp_thread changes.
2313 * work.c (gomp_work_share_end): Use gomp_barrier_wait_start.
2314 (gomp_work_share_end_nowait): Use atomic ops when available.
2315 * config/linux/bar.c, config/linux/bar.h: New files.
2316 * config/posix/bar.c, config/posix/bar.h: New files.
2317
2318 2005-10-13 Jakub Jelinek <jakub@redhat.com>
2319
2320 * single.c (GOMP_single_copy_end): Don't segfault if team is NULL.
2321 * testsuite/libgomp.dg/single-2.c: New test.
2322
2323 * testsuite/libgomp.dg/dg.exp (lang_library_path, lang_test_file,
2324 lang_link_flags): Unset, so that they aren't inherited from previously
2325 sourced *.exp.
2326
2327 * testsuite/libgomp.fortran/threadprivate1.f90: New test.
2328
2329 2005-10-12 Richard Henderson <rth@redhat.com>
2330
2331 * testsuite/lib/libgomp-dg.exp: Set blddir at toplevel.
2332 (libgomp_init): Use lang_test_file, lang_library_path, and
2333 lang_link_flags, set by the subdirectory files. Add -fopenmp here.
2334
2335 * testsuite/libgomp.fortran/fortran.exp (lang_library_path): New.
2336 (lang_test_file, lang_link_flags): New.
2337 (DEFAULT_FFLAGS, ALWAYS_CFLAGS, multilibs, blddir): Remove.
2338
2339 * testsuite/libgomp.c++/c++.exp, testsuite/libgomp.c++/loop-1.C,
2340 testsuite/libgomp.c++/loop-2.C, testsuite/libgomp.c++/loop-3.C,
2341 testsuite/libgomp.c++/loop-4.C, testsuite/libgomp.c++/nested-1.C,
2342 testsuite/libgomp.c++/parallel-1.C,
2343 testsuite/libgomp.c++/reduction-1.C,
2344 testsuite/libgomp.c++/reduction-2.C,
2345 testsuite/libgomp.c++/reduction-3.C,
2346 testsuite/libgomp.c++/sections-1.C, testsuite/libgomp.c++/shared-1.C,
2347 testsuite/libgomp.c++/shared-2.C, testsuite/libgomp.c++/single-1.C,
2348 testsuite/libgomp.c++/single-2.C, testsuite/libgomp.c++/single-3.C:
2349 New files, largely cribbed from the C testsuite.
2350
2351 2005-10-12 Jakub Jelinek <jakub@redhat.com>
2352
2353 * testsuite/libgomp.fortran/character1.f90: New test.
2354 * testsuite/libgomp.fortran/character2.f90: New test.
2355
2356 * testsuite/libgomp.dg/nested-1.c: New test.
2357 * testsuite/libgomp.dg/nested-2.c: New test.
2358 * testsuite/libgomp.fortran/do1.f90: New test.
2359 * testsuite/libgomp.fortran/do2.f90: New test.
2360
2361 * testsuite/libgomp.fortran/reference1.f90: New test.
2362
2363 2005-10-11 Jakub Jelinek <jakub@redhat.com>
2364
2365 * testsuite/libgomp.dg/reduction-1.c: New test.
2366 * testsuite/libgomp.dg/reduction-2.c: New test.
2367 * testsuite/libgomp.dg/reduction-3.c: New test.
2368
2369 2005-10-10 Jakub Jelinek <jakub@redhat.com>
2370
2371 * testsuite/libgomp.dg/atomic-1.c: New test.
2372 * testsuite/libgomp.dg/atomic-2.c: New test.
2373
2374 2005-10-09 Richard Henderson <rth@redhat.com>
2375
2376 * critical.c (atomic_lock): New.
2377 (initialize_critical): Initialize it.
2378 (GOMP_atomic_start, GOMP_atomic_end): New.
2379 * libgomp.map: Export them.
2380 * libgomp_g.h: Declare them.
2381
2382 * testsuite/libgomp.dg/atomic-10.c: Move from gcc testsuite.
2383
2384 2005-10-02 Richard Henderson <rth@redhat.com>
2385
2386 * configure.ac: Move save_CFLAGS hack earlier. Append -Wall/-Werror
2387 to XCFLAGS instead of CFLAGS.
2388
2389 2005-09-30 Richard Henderson <rth@redhat.com>
2390
2391 * configure.ac: Determine whether -pthread or -lpthread is needed.
2392 * Makefile.am (libgomp_la_LDFLAGS): Remove explicit -lpthread.
2393 * Makefine.in, configure: Rebuild.
2394
2395 2005-09-28 Richard Henderson <rth@redhat.com>
2396
2397 * testsuite/libgomp.dg/omp-loop03.c: Fix return code.
2398 * testsuite/libgomp.dg/omp-single-3.c: New test.
2399
2400 2005-09-28 Diego Novillo <dnovillo@redhat.com>
2401
2402 * testsuite/libgomp.dg/omp-single-2.c: New test.
2403 * testsuite/libgomp.dg/shared-2.c: Fix return code.
2404
2405 2005-09-27 Richard Henderson <rth@redhat.com>
2406
2407 * testsuite/libgomp.dg/omp-loop03.c: Add initial barrier.
2408 * testsuite/libgomp.dg/omp-parallel-for.c: Specify static schedule.
2409
2410 2005-09-27 Jakub Jelinek <jakub@redhat.com>
2411
2412 * testsuite/libgomp.dg/omp-loop03.c: New test.
2413
2414 2005-09-27 Diego Novillo <dnovillo@redhat.com>
2415
2416 * testsuite/libgomp.dg/omp-parallel-for.c: New test.
2417
2418 2005-09-27 Diego Novillo <dnovillo@redhat.com>
2419
2420 * testsuite/libgomp.dg/omp-single-1.c: New test.
2421 * testsuite/libgomp.dg/shared-1.c: Return 0.
2422 Add prototype for abort.
2423 * testsuite/libgomp.dg/shared-2.c: Likewise.
2424
2425 2005-09-26 Jakub Jelinek <jakub@redhat.com>
2426
2427 * testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
2428 constructs.
2429
2430 2005-09-26 Diego Novillo <dnovillo@redhat.com>
2431
2432 * testsuite/libgomp.dg/shared-1.c: New test.
2433 * testsuite/libgomp.dg/shared-2.c: New test.
2434
2435 2005-09-24 Richard Henderson <rth@redhat.com>
2436
2437 * testsuite/libgomp.dg/omp_workshare3.c: Mark dg-error.
2438
2439 2005-09-24 Richard Henderson <rth@redhat.com>
2440
2441 * iter.c (gomp_iter_static_next): Round up when computing number
2442 of iterations. Don't bother distributing a remainder equally.
2443
2444 * testsuite/libgomp.dg/omp-loop01.c (main1): Rename from main.
2445 Don't call srand. Zero b before testing.
2446 (main): New.
2447
2448 2005-09-24 Jakub Jelinek <jakub@redhat.com>
2449
2450 * testsuite/libgomp.fortran/omp_atomic1.f90: New test.
2451 * testsuite/libgomp.fortran/omp_atomic2.f90: New test.
2452
2453 2005-09-23 Jakub Jelinek <jakub@redhat.com>
2454
2455 * testsuite/libgomp.fortran/omp_parse1.f90: Add a test for !$omp do
2456 without !$omp end do, followed immediately by subroutine end.
2457
2458 2005-09-23 Diego Novillo <dnovillo@redhat.com>
2459
2460 * testsuite/libgomp.dg/omp-parallel-if.c: New test.
2461
2462 2005-09-22 Richard Henderson <rth@redhat.com>
2463
2464 * critical.c (GOMP_critical_name_start): Change argument to void**.
2465 Reuse the pointer space if the mutex fits.
2466 (GOMP_critical_name_end): Likewise.
2467 (initialize_critical): Don't define if GOMP_MUTEX_INIT_0.
2468 * libgomp_g.h (GOMP_critical_name_start): Update decl.
2469 (GOMP_critical_name_end): Likewise.
2470 * config/linux/mutex.h (GOMP_MUTEX_INIT_0): New.
2471 * config/posix/mutex.h (GOMP_MUTEX_INIT_0): New.
2472
2473 2005-09-20 Richard Henderson <rth@redhat.com>
2474
2475 * critical.c (GOMP_critical_name_start, GOMP_critical_name_end): New.
2476 (create_lock_lock): New.
2477 (initialize_critical): Initialize it.
2478 * libgomp.map (GOMP_critical_name_start, GOMP_critical_name_end): New.
2479 * libgomp_g.h (GOMP_ordered_start, GOMP_ordered_end): Declare.
2480
2481 2005-09-20 Diego Novillo <dnovillo@redhat.com>
2482
2483 * testsuite/libgom.dg/omp-loop01.c: Include stdio.h.
2484
2485 2005-09-20 Diego Novillo <dnovillo@redhat.com>
2486
2487 * testsuite/libgomp.dg/omp-loop01.c: New test.
2488 * testsuite/libgomp.dg/omp-loop02.c: New test.
2489
2490 2005-09-20 Jakub Jelinek <jakub@redhat.com>
2491
2492 * configure.ac (AC_PROG_FC): Add.
2493 (USE_FORTRAN): New automake conditional.
2494 * configure: Rebuilt.
2495 * Makefile.am (libgomp_la_SOURCES): Add fortran.c.
2496 (nodist_include_HEADERS): Add omp_lib.h, omp_lib.f90 and libgomp_f.h.
2497 If USE_FORTRAN, add also omp_lib.mod and omp_lib_kinds.mod.
2498 Add rules to build them.
2499 * Makefile.in: Rebuilt.
2500 * mkomp_h.pl: Compute and replace also OMP_LOCK_KIND and
2501 OMP_NEST_LOCK_KIND.
2502 * libgomp.map: Add Fortran wrappers.
2503 * libgomp_f.h.in: New file.
2504 * omp_lib.h.in: New file.
2505 * omp_lib.f90.in: New file.
2506 * fortran.c: New file.
2507 * testsuite/lib/libgomp-dg.exp: Load a few more .exp files.
2508 Append libgfortran directory to LD_LIBRARY_PATH if it exists.
2509 Add -Lpath_to_libgfortran and -lgfortran -lgfortranbegin if
2510 libgfortran has been built.
2511 * testsuite/libgomp.fortran/fortran.exp: New file.
2512 * testsuite/libgomp.fortran/omp_cond1.f: New test.
2513 * testsuite/libgomp.fortran/omp_cond2.f: New test.
2514 * testsuite/libgomp.fortran/omp_cond3.F90: New test.
2515 * testsuite/libgomp.fortran/omp_cond4.F90: New test.
2516 * testsuite/libgomp.fortran/omp_hello.f: New test.
2517 * testsuite/libgomp.fortran/omp_orphan.f: New test.
2518 * testsuite/libgomp.fortran/omp_parse1.f90: New test.
2519 * testsuite/libgomp.fortran/omp_parse2.f90: New test.
2520 * testsuite/libgomp.fortran/omp_parse3.f90: New test.
2521 * testsuite/libgomp.fortran/omp_parse4.f90: New test.
2522 * testsuite/libgomp.fortran/omp_reduction.f: New test.
2523 * testsuite/libgomp.fortran/omp_workshare1.f: New test.
2524 * testsuite/libgomp.fortran/omp_workshare2.f: New test.
2525
2526 2005-08-30 Richard Henderson <rth@redhat.com>
2527
2528 * loop.c (GOMP_loop_static_start): Provide fallback wrapper
2529 function for when aliases are not usable.
2530 (GOMP_loop_dynamic_start, GOMP_loop_guided_start,
2531 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
2532 GOMP_loop_ordered_guided_start, GOMP_loop_static_next,
2533 GOMP_loop_dynamic_next, GOMP_loop_guided_next,
2534 GOMP_loop_ordered_static_next, GOMP_loop_ordered_dynamic_next,
2535 GOMP_loop_ordered_guided_next): Likewise.
2536 * ordered.c (GOMP_ordered_start): Likewise.
2537
2538 2005-08-01 Diego Novillo <dnovillo@redhat.com>
2539
2540 * testsuite/libgomp.dg/dg.exp: Use -O2 for now.
2541 * testsuite/libgomp.dg/omp_hello.c: Fix return code
2542 * testsuite/libgomp.dg/omp_matvec.c: Likewise.
2543 * testsuite/libgomp.dg/omp_orphan.c: Likewise
2544 * testsuite/libgomp.dg/omp_reduction.c: Likewise
2545 * testsuite/libgomp.dg/omp_workshare1.c: Likewise
2546 * testsuite/libgomp.dg/omp_workshare2.c: Likewise
2547 * testsuite/libgomp.dg/omp_workshare3.c: Likewise
2548 * testsuite/libgomp.dg/omp_workshare4.c: Likewise
2549
2550 2005-07-07 Eric Christopher <echristo@redhat.com>
2551 Diego Novillo <dnovillo@redhat.com>
2552
2553 * testsuite/libgomp.dg/dg.exp: Add -fopenmp to DEFAULT_CFLAGS.
2554 * testsuite/libgomp.dg/omp_hello.c: Add standard includes, fix
2555 up code.
2556 * testsuite/libgomp.dg/omp_matvec.c: Ditto.
2557 * testsuite/libgomp.dg/omp_orphan.c: Ditto.
2558 * testsuite/libgomp.dg/omp_reduction.c: Ditto.
2559 * testsuite/libgomp.dg/omp_workshare1.c: Ditto.
2560 * testsuite/libgomp.dg/omp_workshare2.c: Ditto.
2561 * testsuite/libgomp.dg/omp_workshare3.c: Ditto.
2562 * testsuite/libgomp.dg/omp_workshare4.c: Ditto.
2563
2564 2005-06-13 Diego Novillo <dnovillo@redhat.com>
2565
2566 * TOPLEVEL.patch: Remove.
2567
2568 2005-05-16 Richard Henderson <rth@redhat.com>
2569
2570 * configure.ac: Test for clock_gettime.
2571 * config.h.in, configure: Rebuild.
2572 * config/posix/time.c: Use recommended TIME_WITH_SYS_TIME pattern.
2573 (omp_get_wtime): Use clock_gettime if available.
2574 (omp_get_wtick): Use clock_getres if available.
2575
2576 2005-05-11 Richard Henderson <rth@redhat.com>
2577
2578 * config/linux/ia64/futex.h: New file.
2579 * configure.tgt: Use it.
2580
2581 * team.c (gomp_barrier_init, gomp_barrier_destroy): Mark inline.
2582
2583 2005-05-07 Richard Henderson <rth@redhat.com>
2584
2585 * config/linux/powerpc/futex.h: New file.
2586 * configure.tgt: Use it.
2587
2588 * config/linux/i486/futex.h: Merge ...
2589 * config/linux/x86_64/futex.h: ... into ...
2590 * config/linux/x86/futex.h: ... here.
2591 * configure.tgt: Update to match.
2592
2593 2005-05-06 Richard Henderson <rth@redhat.com>
2594
2595 * config/linux/alpha/futex.h: Conditionally define SYS_futex.
2596 * config/linux/i486/futex.h: Likewise.
2597 * config/linux/x86_64/futex.h: Likewise.
2598
2599 * config/linux/lock.c: New file.
2600 * config/linux/omp-lock.h: New file.
2601
2602 * critical.c, env.h: Don't include omp.h
2603 * config/posix/lock.c: Include libgomp.h instead of omp.h.
2604 * config/posix/time.c: Likewise.
2605 * config/posix/omp-lock.h: New file.
2606 * libgomp.h: Include omp-lock.h and omp.h.
2607 * Makefile.am (nodist_include_HEADERS): New.
2608 (omp.h): New rule.
2609 * configure.ac (PERL): New.
2610 * mkomp_h.pl: New file.
2611 * omp.h.in: Rename from omp.h; replace omp_lock_t and omp_nest_lock_t
2612 with templates.
2613 * Makefile.in, configure, testsuite/Makefile.in: Rebuild.
2614
2615 * testsuite/lib/libgomp-dg.exp (libgomp_init): Add include into
2616 build directory. Re-add -march=i486 hack.
2617
2618 * testsuite/lib/libgomp-dg.exp (libgomp_compile_flags): Remove.
2619 (libgomp_link_flags): Remove.
2620 (libgomp_initialized): Remove.
2621 (libgomp_init): Don't protect from reinitialization. Copy code
2622 from libstdc++ for getting the multilib set correctly.
2623
2624 2005-05-05 Richard Henderson <rth@redhat.com>
2625
2626 * config/linux/alpha/futex.h: New file.
2627 * configure.tgt (alpha*-*-linux*): Use it.
2628
2629 * config/posix/mutex.c: New file.
2630 * config/posix/sem.c: Use libgomp.h.
2631
2632 * configure.tgt (x86_64-linux): Also test CC for -m32.
2633 * config/linux/x86_64/futex.h (futex_wait): Fix r10 usage.
2634
2635 * testsuite/lib/libgomp-dg.exp (libgomp_link_flags): Add /
2636 after $gccpath.
2637
2638 * Makefile.am (SUBDIRS): New.
2639 (libgomp_la_LDFLAGS): Add -lpthread.
2640 * configure.ac (AM_INIT_AUTOMAKE): Enable dependencies.
2641 * Makefile.in, aclocal.m4, config.h.in, configure: Rebuild.
2642
2643 * libgomp_g.h: New file.
2644 * libgomp.h: Split out all public declarations to libgomp_g.h.
2645 Use pragma GCC visibility instead of ATTRIBUTE_HIDDEN.
2646 * config/linux/mutex.h: Remove ATTRIBUTE_HIDDEN.
2647 * config/linux/sem.h: Likewise.
2648 * config/posix/sem.h: Likewise.
2649
2650 * Makefile.am (AM_LDFLAGS): New.
2651 (libgomp_version_script): Split out from ...
2652 (libgomp_la_LDFLAGS): ... here.
2653 (libgomp_version_info): New.
2654 * acinclude.m4 (LIBGOMP_CHECK_TLS): Use LIBGOMP_ENABLE.
2655 (LIBGOMP_ENABLE): New.
2656 (LIBGOMP_CHECK_LINKER_FEATURES): New.
2657 (LIBGOMP_ENABLE_SYMVERS): New.
2658 * configure.ac (AC_INIT): Version 1.0.
2659 (enable-version-specific-runtime-libs): Use LIBGOMP_ENABLE.
2660 (enable-linux-futex): Likewise. Rename from enable-futex.
2661 (libtool_VERSION): New.
2662 (LIBGOMP_ENABLE_SYMVERS): Use it.
2663 * configure.tgt: Check with_gnu_ld wrt have_tls optimizations.
2664 * Makefile.in, aclocal.m4, configure: Rebuild.
2665
2666 * config/linux/mutex.c: Include libgomp.h instead of mutex.h.
2667 (gomp_mutex_unlock_slow): Fix typo.
2668 * config/linux/sem.c: Similarly.
2669 (gomp_sem_post_slow): Fix typo.
2670 * config/linux/sem.h (gomp_sem_post_slow): Fix typo.
2671 * config/linux/i486/futex.h: Remove USE_LINUX_SYSENTER code.
2672 [__PIC__] (sys_futex0): Don't use tmp output in asm.
2673
2674 * Makefile.am (AM_CFLAGS): Expand with XCFLAGS.
2675 (libgomp_la_LDFLAGS): Add top_srcdir to path.
2676 * acinclude.m4: Copy libtool.m4 stuff from libgfortran.
2677 * configure.ac: Check for getloadavg. Substitute XCFLAGS and
2678 XLDFLAGS. Add XCFLAGS to CFLAGS around LIBGOMP_CHECK_SYNC_BUILTINS.
2679 * configure.tgt: Set XCFLAGS and XLDFLAGS instead of CFLAGS and
2680 LDFLAGS. Pull enable_futex check to top-level.
2681 * libgomp.h: Fix sem.h and mutex.h includes. Define ATTRIBUTE_HIDDEN.
2682 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
2683
2684 First attempt at real configury.
2685 * Makefile, config.h: Remove file.
2686 * Makefile.am, Makefile.in: New file.
2687 * acinclude.m4 aclocal.m4: New file.
2688 * configure.ac, configure.tgt, configure: New file.
2689
2690 * config/posix/lock.c: Rename from sys-lock.c.
2691 * config/posix/mutex.h: Rename from sys-mutex.h.
2692 * config/posix/sem.c: Rename from sys-sem.c.
2693 * config/posix/sem.h: Rename from sys-sem.h.
2694 * config/posix/proc.c: Rename from sys-proc.c.
2695 * config/posix/time.c: Rename from sys-proc.c.
2696
2697 * config/linux/mutex.c: New file.
2698 * config/linux/mutex.h: New file.
2699 * config/linux/sem.c: New file.
2700 * config/linux/sem.h: New file.
2701 * config/linux/i486/futex.h: New file.
2702 * config/linux/x86_64/futex.h: New file.
2703
2704 2005-05-04 Richard Henderson <rth@redhat.com>
2705
2706 * iter.c (gomp_iter_dynamic_next, gomp_iter_guided_next): New.
2707 * libgomp.h: Declare them.
2708 * loop.c (gomp_loop_dynamic_start, gomp_loop_guided_start,
2709 gomp_loop_dynamic_next, gomp_loop_guided_next): Use them.
2710
2711 2005-05-04 Richard Henderson <rth@redhat.com>
2712
2713 * libgomp-1 code drop
2714
2715 2005-05-04 Richard Henderson <rth@redhat.com>
2716
2717 * iter.c (gomp_iter_static_next): Return tri-state on 0.
2718 * ordered.c (gomp_ordered_static_next): Remove not_last argument.
2719 * libgomp.h (struct gomp_team_state): Make static_trip unsigned.
2720 (gomp_iter_static_next): Update.
2721 (gomp_ordered_static_next): Update.
2722 * loop.c (gomp_loop_static_start): Update for gomp_iter_static_next.
2723 (gomp_loop_ordered_static_start): Likewise. Exit early for a
2724 totally empty range.
2725 (gomp_loop_ordered_static_next): Refine test for calling
2726 gomp_ordered_static_next.
2727 * testsuite/ordered-1.c: Add case for more threads than iterations.
2728
2729 * iter.c (gomp_iter_runtime_next_locked): Remove.
2730 * loop.c (gomp_loop_static_start, gomp_loop_dynamic_start,
2731 gomp_loop_guided_start, gomp_loop_ordered_static_start,
2732 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
2733 gomp_loop_static_next, gomp_loop_dynamic_next, gomp_loop_guided_next,
2734 gomp_loop_ordered_static_next, gomp_loop_ordered_dynamic_next,
2735 gomp_loop_ordered_guided_next): Downcase name, make static, add
2736 an external alias with the old name.
2737 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
2738 GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Use a
2739 switch and call one of the above static functions.
2740 * libgomp.h: Update.
2741
2742 * work.c (gomp_work_share_start): Lock the mutex for !first too.
2743 * loop.c (GOMP_loop_static_start, GOMP_loop_dynamic_start,
2744 GOMP_loop_guided_start, GOMP_loop_runtime_start,
2745 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
2746 GOMP_loop_ordered_guided_start): Update to match.
2747 * sections.c (GOMP_sections_start): Likewise.
2748 * single.c (GOMP_single_start, GOMP_single_copy_start): Likewise.
2749
2750 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
2751 gomp_ordered_static_init, gomp_ordered_static_next): Rename s/_loop//.
2752 Use bounds check instead of modulus.
2753 (gomp_ordered_sync): Split out of GOMP_ordered_start.
2754 (gomp_ordered_last): Don't sync with ordered_owner here.
2755 (gomp_ordered_next): Likewise.
2756 (gomp_ordered_static_loop_next): Likewise.
2757 * loop.c, libgomp.h: Update to match.
2758
2759 * libgomp.h (GOMP_barrier): Declare.
2760
2761 * testsuite/barrier-1.c: New file.
2762 * testsuite/critical-1.c: New file.
2763 * testsuite/ordered-2.c: New file.
2764 * testsuite/ordered-1.c: New file.
2765 * testsuite/sections-1.c: New file.
2766 * testsuite/single-1.c: New file.
2767 * testsuite/Makefile (TESTS): Add them.
2768
2769 2005-05-04 Richard Henderson <rth@redhat.com>
2770
2771 * libgomp.h (struct gomp_work_share): Add ordered_owner.
2772 * loop.c (GOMP_loop_static_start): If not the startup thread,
2773 acquire the mutex to wait for initialization complete.
2774 (GOMP_loop_ordered_static_start): Likewise.
2775 (GOMP_loop_ordered_runtime_start): Likewise.
2776 (GOMP_loop_ordered_static_first): Remove.
2777 (GOMP_loop_ordered_dynamic_first): Remove.
2778 (GOMP_loop_ordered_guided_first): Remove.
2779 (GOMP_loop_ordered_runtime_first): Remove.
2780 * ordered.c (gomp_ordered_loop_first): Post to own release when
2781 we're the first thread.
2782 (gomp_ordered_loop_last): Wait on release if not owner.
2783 (gomp_ordered_loop_next): Likewise.
2784 (gomp_ordered_static_loop_init): New.
2785 (gomp_ordered_static_loop_next): Use ordered_owner.
2786 (GOMP_ordered_start): Likewise.
2787 * work.c (gomp_new_work_share): Initialize ordered_owner.
2788
2789 2005-05-03 Richard Henderson <rth@redhat.com>
2790
2791 * Makefile (OPT): New.
2792 (CFLAGS): Use it.
2793
2794 * loop.c (GOMP_loop_end, GOMP_loop_end_nowait): New.
2795 * sections.c (GOMP_sections_end, GOMP_sections_end_nowait): New.
2796 * libgomp.h, libgomp.map, NOTES: Update to match.
2797
2798 * team.c (struct gomp_thread_start_data): Remove ts, fn, data.
2799 Add initialized and thr members.
2800 (gomp_thread_start): Pause when initially spawned to wait for
2801 the whole team to be created.
2802 (gomp_team_start): Release team members at the end.
2803
2804 * testsuite/loop-1.c (N): New. Use it instead of hardcoded 100.
2805 (f_foo_1): Use GOMP_loop_end.
2806 (f_foo_2): Use GOMP_loop_end_nowait.
2807
2808 * testsuite/loop-2.c: New file.
2809 * testsuite/Makefile (TESTS): Add it.
2810
2811 2005-05-03 Richard Henderson <rth@redhat.com>
2812
2813 * iter.c (gomp_iter_static_next): Fix overflow check typo.
2814 (gomp_iter_dynamic_next_locked): Fix overflow check thinko.
2815 * team.c (new_team): Initialize oldest_live_gen to 1 if no
2816 initial work_share.
2817
2818 * testsuite/Makefile: New file.
2819 * testsuite/loop-1.c: New file.
2820
2821 2005-05-03 Richard Henderson <rth@redhat.com>
2822
2823 Initial implementation and checkin.