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