]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgomp/ChangeLog
Regenerate configure files for libtool.m4 change
[thirdparty/gcc.git] / libgomp / ChangeLog
CommitLineData
e6d5f8c9
L
12012-05-16 H.J. Lu <hongjiu.lu@intel.com>
2
3 * configure: Regenerated.
4
559d990c
MLI
52012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
6
7 * testsuite/lib/libgomp.exp: Add -fno-diagnostics-show-caret.
8
b9c23a61
L
92012-03-31 H.J. Lu <hongjiu.lu@intel.com>
10
11 PR bootstrap/52812
12 * configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.
13
c140ddf3
JJ
142012-03-22 Jakub Jelinek <jakub@redhat.com>
15
16 PR middle-end/52547
17 * testsuite/libgomp.c/pr52547.c: New test.
18
6a26a74d
BRF
192012-03-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
20
21 * testsuite/lib/libgomp.exp: load fortran-modules.exp
22
b24513a1
RO
232012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
24
25 * configure.tgt (mips-sgi-irix6*): Remove.
26
5c30094f
RO
272012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
28
29 * configure.tgt (alpha*-dec-osf*): Remove.
30
31 * config/osf/sem.h: Remove.
32 * config/posix/lock.c (_XOPEN_SOURCE): Define unconditionally.
33
a339c9d6
EB
342012-02-29 Eric Botcazou <ebotcazou@adacore.com>
35
36 * config/linux/sparc/futex.h (cpu_relax): Read from CC register.
37
cc2de92d
RO
382012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
39
40 PR libstdc++/52188
41 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Remove symvers_renaming.
42 Remove ENABLE_SYMVERS_SOL2.
43 * configure: Regenerate.
44 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB] (comma): New variable.
45 (PREPROCESS): New variable.
46 (libgomp.ver): New target.
47 [LIBGOMP_BUILD_VERSIONED_SHLIB &&
48 LIBGOMP_BUILD_VERSIONED_SHLIB_GNU]: Remove
49 LIBGOMP_BUILD_VERSIONED_SHLIB_SOL2 handling.
50 Use libgomp.ver.
51 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Use libgomp.ver, libgomp.ver-sun.
52 * Makefile.in: Regenerate.
53
dd552284
WL
542012-02-14 Walter Lee <walt@tilera.com>
55
56 * configure.tgt: Handle tilegx and tilepro.
57 * config/linux/tile/futex.h: New file.
58
31432e21
RG
592012-02-08 Richard Guenther <rguenther@suse.de>
60
61 PR tree-optimization/46886
62 * testsuite/libgomp.c/pr46886.c: New testcase.
63
b9264b5f
MK
642012-01-25 Matthias Klose <doko@ubuntu.com>
65
66 * config/linux/arm: Remove empty directory.
67 * configure.tgt (config_path): Remove linux-arm for arm*-*-linux*.
68
fbf7be80
AM
692011-12-09 Alan Modra <amodra@gmail.com>
70
71 PR libgomp/51376
72 * task.c (GOMP_taskwait): Don't access task->children outside of
73 task_lock mutex region.
74 (GOMP_task): Likewise.
75
5de62d00
JJ
762011-12-06 Jakub Jelinek <jakub@redhat.com>
77
78 PR libgomp/51132
79 * testsuite/libgomp.graphite/force-parallel-1.c: Move large arrays
80 to file scope.
81 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
82 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
83 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
84 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
85 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
86
45608a43
AM
872011-12-02 Alan Modra <amodra@gmail.com>
88
89 * config/linux/affinity.c: Use atomic rather than sync builtin.
90 * config/linux/lock.c: Likewise.
91 * config/linux/ptrlock.h: Likewise.
92 * config/linux/ptrlock.c: Likewise.
93 * config/linux/ptrlock.h (gomp_ptrlock_set): Always write here..
94 * config/linux/ptrlock.c (gomp_ptrlock_set_slow): ..not here.
95 * config/linux/futex.h (atomic_write_barrier): Delete unused function.
96 * config/linux/alpha/futex.h (atomic_write_barrier): Likewise.
97 * config/linux/ia64/futex.h (atomic_write_barrier): Likewise.
98 * config/linux/mips/futex.h (atomic_write_barrier): Likewise.
99 * config/linux/powerpc/futex.h (atomic_write_barrier): Likewise.
100 * config/linux/s390/futex.h (atomic_write_barrier): Likewise.
101 * config/linux/sparc/futex.h (atomic_write_barrier): Likewise.
102 * config/linux/x86/futex.h (atomic_write_barrier): Likewise.
103
ab6dd406
AM
1042011-11-30 Alan Modra <amodra@gmail.com>
105
106 PR libgomp/51298
107 * config/linux/bar.h: Use atomic rather than sync builtins.
108 * config/linux/bar.c: Likewise. Add missing acquire
109 synchronisation on generation field.
110 * task.c (gomp_barrier_handle_tasks): Regain lock so as to not
111 double unlock.
112
b40c885f
AM
1132011-11-30 Alan Modra <amodra@gmail.com>
114
115 * ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
116 * critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence.
117 * config/linux/mutex.h: Use atomic rather than sync builtins.
118 * config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state.
119 * config/linux/omp-lock.h: Comment fix.
120 * config/linux/arm/mutex.h: Delete.
121 * config/linux/powerpc/mutex.h: Delete.
122 * config/linux/ia64/mutex.h: Delete.
123 * config/linux/mips/mutex.h: Delete.
124
3e348fcc
AM
1252011-11-30 Alan Modra <amodra@gmail.com>
126
127 PR libgomp/51249
128 * config/linux/sem.h: Rewrite.
129 * config/linux/sem.c: Rewrite.
130
cef86eb2
RH
1312011-11-28 Richard Henderson <rth@redhat.com>
132
133 * libgomp.h (enum memmodel): New.
134
c6084f68
AT
1352011-11-21 Andreas Tobler <andreast@fgznet.ch>
136
137 * configure: Regenerate.
138
06fe026c
MK
1392011-10-10 Matthias Klose <doko@ubuntu.com>
140
141 * config/posix95: Remove empty directory.
142
a6c975bd
JJ
1432011-08-26 Jakub Jelinek <jakub@redhat.com>
144
145 * testsuite/libgomp.fortran/threadprivate4.f90: New test.
146
c26dffff
JJ
1472011-08-19 Jakub Jelinek <jakub@redhat.com>
148
149 PR fortran/49792
150 * testsuite/libgomp.fortran/pr49792-1.f90: New test.
151 * testsuite/libgomp.fortran/pr49792-2.f90: New test.
152
ddaad3c8
RO
1532011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
154
155 * config/posix95/lock.c, posix95/omp-lock.h: Remove.
156
98d03683
RO
1572011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
158
159 PR libgomp/49965
160 * testsuite/libgomp.c++/task-8.C: Replaced err by errval.
161
e0b23d9f
UB
1622011-08-03 Uros Bizjak <ubizjak@gmail.com>
163
164 * config/linux/proc.h: New.
165 * config/linux/proc.c: Include "proc.h". Do not include <sched.h>.
166 (gomp_cpuset_popcount): Rename from cpuset_popcount. No more static.
167 (gomp_init_num_threads): Update call to cpuset_popcount.
168 (get_num_procs): Ditto.
169 * config/linux/affinity.c (gomp_init_affinity): Call
170 gomp_cpuset_popcount.
171
20906c66
JJ
1722011-08-02 Jakub Jelinek <jakub@redhat.com>
173
174 PR fortran/42041
175 PR fortran/46752
176 * omp.h.in (omp_in_final): New prototype.
177 * omp_lib.f90.in (omp_in_final): New interface.
178 (omp_integer_kind, omp_logical_kind): Remove
179 and replace all its uses in the module with 4.
180 (openmp_version): Change to 201107.
181 * omp_lib.h.in (omp_sched_static, omp_sched_dynamic,
182 omp_sched_guided, omp_sched_auto): Use omp_sched_kind
183 kind for the parameters.
184 (omp_in_final): New external.
185 (openmp_version): Change to 201107.
186 * task.c (omp_in_final): New function.
187 (gomp_init_task): Initialize final_task.
188 (GOMP_task): Remove unused attribute from flags. Handle final
189 tasks.
190 (GOMP_taskyield): New function.
191 (omp_in_final): Return true if if (false) or final (true) task
192 or descendant of final (true).
193 * fortran.c (omp_in_final_): New function.
194 * libgomp.map (OMP_3.1): Export omp_in_final and omp_in_final_.
195 (GOMP_3.0): Export GOMP_taskyield.
196 * env.c (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New
197 variables.
198 (parse_unsigned_long_list): New function.
199 (initialize_env): Use it for OMP_NUM_THREADS. Call parse_boolean
200 with "OMP_PROC_BIND". If OMP_PROC_BIND=true, call gomp_init_affinity
201 even if parse_affinity returned false.
202 * config/linux/affinity.c (gomp_init_affinity): Handle
203 gomp_cpu_affinity_len == 0.
204 * libgomp_g.h (GOMP_taskyield): New prototype.
205 * libgomp.h (struct gomp_task): Add final_task field.
206 (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New externs.
207 * team.c (gomp_team_start): Override new task's nthreads_var icv
208 if list form OMP_NUM_THREADS has been used and it has value for
209 the new nesting level.
210
211 * testsuite/libgomp.c/atomic-11.c: New test.
212 * testsuite/libgomp.c/atomic-12.c: New test.
213 * testsuite/libgomp.c/atomic-13.c: New test.
214 * testsuite/libgomp.c/atomic-14.c: New test.
215 * testsuite/libgomp.c/reduction-6.c: New test.
216 * testsuite/libgomp.c/task-5.c: New test.
217 * testsuite/libgomp.c++/atomic-2.C: New test.
218 * testsuite/libgomp.c++/atomic-3.C: New test.
219 * testsuite/libgomp.c++/atomic-4.C: New test.
220 * testsuite/libgomp.c++/atomic-5.C: New test.
221 * testsuite/libgomp.c++/atomic-6.C: New test.
222 * testsuite/libgomp.c++/atomic-7.C: New test.
223 * testsuite/libgomp.c++/atomic-8.C: New test.
224 * testsuite/libgomp.c++/atomic-9.C: New test.
225 * testsuite/libgomp.c++/task-8.C: New test.
226 * testsuite/libgomp.c++/reduction-4.C: New test.
227 * testsuite/libgomp.fortran/allocatable7.f90: New test.
228 * testsuite/libgomp.fortran/allocatable8.f90: New test.
229 * testsuite/libgomp.fortran/crayptr3.f90: New test.
230 * testsuite/libgomp.fortran/omp_atomic3.f90: New test.
231 * testsuite/libgomp.fortran/omp_atomic4.f90: New test.
232 * testsuite/libgomp.fortran/pointer1.f90: New test.
233 * testsuite/libgomp.fortran/pointer2.f90: New test.
234 * testsuite/libgomp.fortran/task4.f90: New test.
235
2362011-08-02 Tobias Burnus <burnus@net-b.de>
237
238 * libgomp.texi: Update OpenMP spec references to 3.1.
239 (omp_in_final,OMP_PROC_BIND): New sections.
240 (OMP_NUM_THREADS): Document that the value can be now a list.
241 (GOMP_STACKSIZE,GOMP_CPU_AFFINITY): Update @ref.
242
c01ecafc
L
2432011-08-02 H.J. Lu <hongjiu.lu@intel.com>
244
245 * config/linux/x86/futex.h: Check __x86_64__ instead of
246 __LP64__.
247
25142650
JJ
2482011-07-29 Jakub Jelinek <jakub@redhat.com>
249
250 PR middle-end/49897
251 PR middle-end/49898
252 * testsuite/libgomp.c/pr49897-1.c: New test.
253 * testsuite/libgomp.c/pr49897-2.c: New test.
254 * testsuite/libgomp.c/pr49898-1.c: New test.
255 * testsuite/libgomp.c/pr49898-2.c: New test.
256
f53d712f
L
2572011-07-28 H.J. Lu <hongjiu.lu@intel.com>
258
259 * testsuite/lib/libgomp.exp (libgomp_init): Add -march=i486
260 for ia32 instead of ilp32.
261
262 * testsuite/libgomp.c/atomic-1.c: Require ia32 instead of ilp32.
263 * testsuite/libgomp.c/atomic-6.c: Likewise.
264
3689198d
SP
2652011-07-23 Sebastian Pop <sebastian.pop@amd.com>
266
267 * testsuite/libgomp.graphite/force-parallel-1.c: Un-xfail.
268 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust pattern.
269
1a79cb73
RO
2702011-07-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
271
272 PR libgomp/45351
273 * config/osf/sem.h: New file.
274 * configure.tgt (alpha*-dec-osf*): Prepend osf to config_path.
275
c1f51484
RO
2762011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
277
278 PR target/49541
279 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -lgomp to
280 ldflags.
281
bfee0724
JJ
2822011-07-15 Jakub Jelinek <jakub@redhat.com>
283
284 * config/linux/wait.h (do_spin): New inline, largely copied
285 from do_wait, just don't do futex_wait here, instead return true if
286 it should be done.
287 (do_wait): Implement using do_spin.
288 * config/linux/mutex.h (gomp_mutex_lock_slow): Add an int argument
289 to prototype.
290 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
291 __sync_bool_compare_and_swap, pass the oldval to
292 gomp_mutex_lock_slow.
293 * config/linux/mutex.c (gomp_mutex_lock_slow): Add oldval argument.
294 If all mutex contenders are just spinning and not sleeping, don't
295 change state to 2 unnecessarily. Optimize the loop when state has
296 already become 2 to use just one atomic operation per loop instead
297 of two.
298 * config/linux/ia64/mutex.h (gomp_mutex_lock_slow): Add an int argument
299 to prototype.
300 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
301 __sync_bool_compare_and_swap, pass the oldval to
302 gomp_mutex_lock_slow.
303
fb79f500
JJ
3042011-06-22 Jakub Jelinek <jakub@redhat.com>
305
306 PR libgomp/49490
307 * iter.c (gomp_iter_static_next): For chunk size 0
308 only use n ceil/ nthreads size for the first
309 n % nthreads threads in the team instead of
310 all threads except for the last few ones which
311 get less work or none at all.
312 * iter_ull.c (gomp_iter_ull_static_next): Likewise.
313 * env.c (parse_schedule): If OMP_SCHEDULE doesn't have
314 chunk argument, set run_sched_modifier to 0 for static
315 resp. 1 for other kinds. If chunk argument is 0
316 and not static, set value to 1.
317
4577f730
JJ
3182011-05-19 Jakub Jelinek <jakub@redhat.com>
319
ea93a47b
JJ
320 PR c++/49043
321 * testsuite/libgomp.c++/pr49043.C: New test.
322
4577f730
JJ
323 PR c++/48869
324 * testsuite/libgomp.c++/pr48869.C: New test.
325
e7385332
JJ
3262011-05-06 Jakub Jelinek <jakub@redhat.com>
327
328 PR fortran/48894
329 * fortran.c: Include limits.h.
330 (TO_INT): Define.
331 (omp_set_dynamic_8_, omp_set_num_threads_8_): Use !!*set instead of
332 *set.
333 (omp_set_num_threads_8_, omp_set_schedule_8_,
334 omp_set_max_active_levels_8_, omp_get_ancestor_thread_num_8_,
335 omp_get_team_size_8_): Use TO_INT macro.
336 * testsuite/libgomp.fortran/pr48894.f90: New test.
337
20790697
JJ
3382011-04-13 Jakub Jelinek <jakub@redhat.com>
339
340 PR middle-end/48591
341 * testsuite/libgomp.c/pr48591.c: New test.
342
bf382f5f
RO
3432011-03-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
344
345 PR bootstrap/48135
346 * acinclude.m4 (enable_symvers): Handle --disable-symvers.
347 * configure: Regenerate.
348
113a53c1
JJ
3492011-02-27 Jakub Jelinek <jakub@redhat.com>
350
351 PR fortran/47886
352 * testsuite/libgomp.fortran/task3.f90: New test.
353
0024f1af
TB
3542011-02-24 Tobias Burnus <burnus@net-b.de>
355
356 * libgomp.texi (GOMP_STACKSIZE): Fix @ref to OMP_STACKSIZE.
357
21e1e594
JJ
3582011-02-23 Jakub Jelinek <jakub@redhat.com>
359
360 PR libgomp/47854
361 * libgomp.texi (omp_get_wtime): Don't say time in the past
362 must be Unix Epoch.
363
67962076
JJ
3642011-02-18 Jakub Jelinek <jakub@redhat.com>
365
366 PR libgomp/47804
367 * testsuite/libgomp.fortran/fortran.exp: Check for both
368 libquadmath.a and libquadmath.${shlib_ext}. If neither exists,
369 but $blddir != "", still append ${blddir}/${lang_library_path}
370 to ld_library_path.
371
3808007c
TB
3722011-02-16 Tobias Burnus <burnus@net-b.de>
373
374 PR libgomp/47758
375 * testsuite/libgomp.fortran/fortran.exp: Check for the existence
376 of libquadmath.a before adding its libpath to ldflags.
377
53b4d41d
JJ
3782011-02-14 Jakub Jelinek <jakub@redhat.com>
379
380 PR libgomp/47731
381 * config/linux/futex.h (futex_wait): Pass NULL as timeout argument
382 to FUTEX_WAIT futex syscall.
383 * config/linux/wait.h: Include <futex.h> instead of "futex.h".
384
029c8f3e
RW
3852011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
386
387 * configure: Regenerate.
388
bddd6626
BK
3892011-01-20 Benjamin Kosnik <bkoz@redhat.com>
390
391 PR libstdc++/36104
392 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.
393
f1d4ab26
GP
3942011-01-16 Gerald Pfeifer
395
396 * configure.tgt (*-*-freebsd*): Add -lpthread to XLDFLAGS.
397
2b503136
JJ
3982010-12-14 Jakub Jelinek <jakub@redhat.com>
399
400 PR fortran/46874
401 * libgomp.fortran/allocatable6.f90: New test.
402
c0f9d583
RO
4032010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
404
405 * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
406 * configure: Regenerate.
407
7de6ba7a
DK
4082010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
409
410 PR target/40125
411 PR lto/46695
412 * configure.ac: Invoke ACX_LT_HOST_FLAGS.
413 * Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
414 * aclocal.m4: Regenerate.
415 * configure: Regenerate.
416 * Makefile.in: Regenerate.
417 * testsuite/Makefile.in: Regenerate.
418
b7516041
JJ
4192010-12-02 Jakub Jelinek <jakub@redhat.com>
420
edaadf74
JJ
421 PR fortran/46753
422 * libgomp.fortran/pr46753.f90: New test.
423
4c698cf8
JJ
424 PR libgomp/43706
425 * env.c (initialize_env): Default to spin count 300000
426 instead of 20000000 if neither OMP_WAIT_POLICY nor GOMP_SPINCOUNT
427 is specified.
428
b7516041
JJ
429 PR libgomp/45240
430 * parallel.c (GOMP_parallel_end): Unlock gomp_remaining_threads_lock
431 at the end if sync builtins aren't supported.
432
6b43a34c
RO
4332010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
434
435 * configure.tgt (mips-sgi-irix6*): Add -lpthread to XLDFLAGS.
436
950691fa
RO
4372010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
438
439 * testsuite/libgomp.fortran/vla8.f90: Use dg-timeout-factor 2.0.
440
fb9041ea
IS
4412010-11-24 Iain Sandoe <iains@gcc.gnu.org>
442
443 * testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath.
444
1ec601bf
FXC
4452010-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
446 Tobias Burnus <burnus@net-b.de>
447
448 PR fortran/32049
3e348fcc 449 * configure.ac:
1ec601bf
FXC
450 * configure: Regenerate.
451
d213e92e
MS
4522010-10-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
453
454 * config/linux/futex.h: New.
455 * config/linux/arm/mutex.h: New.
456 * configure.tgt (arm*-*-linux*): Add config path.
457
89d5c66f
SP
4582010-09-30 Sebastian Pop <sebastian.pop@amd.com>
459
460 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
461
87350d4a
TB
4622010-09-23 Tobias Burnus <burnus@net-b.de>
463
464 * libgomp.texi (omp_get_nested, omp_set_nested, omp_set_dynamic):
465 Change Fortran datatype to LOGICAL.
466 (omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
467 omp_unset_nested_lock): Use intent(inout) instead of intent(out).
468
75bc9e5e
RW
4692010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
470
471 * configure: Regenerate.
472
acb5c916
JJ
4732010-07-26 Jakub Jelinek <jakub@redhat.com>
474
475 * libgomp.texi: Add function keyword to a couple of Fortran
476 interfaces, use integer instead of int for Fortran.
477
6a2ba183
AH
4782010-07-26 Aldy Hernandez <aldyh@redhat.com>
479
480 * libgomp.texi: Fix spelling and pasto problems throughout.
481 Adjust prototypes to match code.
482
df161b69
TB
4832010-07-24 Tobias Burnus <burnus@net-b.de>
484
485 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add -w to
486 silence -fwhole-file warning.
487
16c9d3b1
RO
4882010-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
489
490 * configure.tgt (*-*-solaris2.[56]*): Removed.
491
6d28b933
RO
4922010-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
493
494 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
495 Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
496 LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
497 (HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
498 targetting solaris2*.
499 * configure: Regenerate.
500 * config.h.in: Regenerate.
501
502 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
503 libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
504 Add libgomp_version_dep.
505 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
506 versioning.
507 [!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
508 (libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
509 * Makefile.in: Regenerate.
510
511 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
512 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
513 * libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
514 to common block, protected by
515 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
516
07a67d6a
GP
5172010-06-10 Gerald Pfeifer <gerald@pfeifer.com>
518
519 * libgomp.texi: Move to GFDL version 1.3. Update copyright years.
520
dbd34b89
IS
5212010-06-09 Iain Sandoe <iains@gcc.gnu.org>
522
523 PR bootstrap/43170
524 * configure: Regenerate.
525
13917ae3
RW
5262010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
527
528 PR other/43620
529 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
530 * configure: Regenerate.
531 * Makefile.in: Regenerate.
532 * testsuite/Makefile.in: Regenerate.
533
b83a701b
JJ
5342010-04-26 Jakub Jelinek <jakub@redhat.com>
535
536 PR c/43893
537 * testsuite/libgomp.c/pr43893.c: New test.
538 * testsuite/libgomp.c++/pr43893.C: New test.
539
78db7d92
JJ
5402010-04-21 Jakub Jelinek <jakub@redhat.com>
541
542 PR middle-end/43570
543 * testsuite/libgomp.fortran/vla8.f90: New test.
544
5221d7a9
JJ
5452010-04-20 Jakub Jelinek <jakub@redhat.com>
546
e4ba7a60
JJ
547 PR libgomp/43706
548 * config/linux/affinity.c (gomp_init_affinity): Decrease
549 gomp_available_cpus if affinity mask confines the process to fewer
550 CPUs.
551 * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is
552 non-NULL, just return gomp_available_cpus.
553
5221d7a9
JJ
554 PR libgomp/43569
555 * sections.c (gomp_sections_init): Initialize ws->mode.
556
289a9f86
UB
5572010-04-14 Uros Bizjak <ubizjak@gmail.com>
558
559 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
560 not unused bar variable.
561 * configure: Regenerate.
562
4d9e8446
RW
5632010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
564
565 * Makefile.in: Regenerate.
566 * aclocal.m4: Regenerate.
567 * testsuite/Makefile.in: Regenerate.
568
80f046cc
JJ
5692010-03-22 Jakub Jelinek <jakub@redhat.com>
570
571 PR libgomp/42942
572 * env.c (parse_unsigned_long): Add ALLOW_ZERO argument.
573 (initialize_env): Adjust callers.
574 (omp_set_max_active_levels): Set gomp_max_active_levels_var even
575 when the argument is 0.
576
577 * testsuite/libgomp.c/pr42942.c: New test.
578
b58543c3
SP
5792010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
580
581 PR middle-end/42644
582 PR middle-end/42130
583 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
584 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust.
585
41d1138f
RO
5862010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
587
588 * testsuite/libgomp.c++/task-1.C: Renamed err to e.
589 * testsuite/libgomp.c++/task-6.C: Likewise.
590
6684eb28
SE
5912010-01-28 Steve Ellcey <sje@cup.hp.com>
592
593 * configure.tgt (*-*-hpux*): Add -frandom-seed flag.
594
2122aa97
PB
5952010-01-26 Paolo Bonzini <bonzini@gnu.org>
596
597 * configure.ac: Test for executability of _the first word_ of GFORTRAN.
598 * configure: Regenerate.
599
057dd91d
JJ
6002010-01-26 Jakub Jelinek <jakub@redhat.com>
601
602 PR fortran/42866
603 * testsuite/libgomp.fortran/allocatable5.f90: New test.
604
d0709b6a
PB
6052010-01-20 Paolo Bonzini <bonzini@gnu.org>
606
607 * configure.ac: Test for executability of GFORTRAN.
608 * configure: Regenerate.
609
b9497ab5
RO
6102010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
611
612 * configure: Regenerate.
613
45de5648
L
6142010-01-04 H.J. Lu <hongjiu.lu@intel.com>
615
616 PR libgomp/42602
617 * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic.
618
e74003a1
RG
6192010-01-03 Richard Guenther <rguenther@suse.de>
620
621 * testsuite/libgomp.fortran/recursion1.f90: New testcase.
622
1b3abda8
SP
6232009-12-23 Sebastian Pop <sebpop@gmail.com>
624
625 * testsuite/libgomp.graphite/pr4118.c: New.
626
e19977d3
IS
6272009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
628
629 * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage
630 for darwin, protect the test with require-effective-target tls_runtime.
631 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
632
1d32a772
IS
6332009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
634
635 PR target/41605
636 * testsuite/lib/libgomp.exp: Provide -B options to allow for
637 link spec %s substitutions for static libraries.
638
deb109b2
JH
6392009-12-18 Jack Howarth <howarth@bromo.med.uc.edu>
640
641 PR testsuite/42135
642 * libgomp.graphite/force-parallel-2.c: Reduce array size.
643
43e02a8a
RW
6442009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
645
646 * Makefile.in: Regenerate.
647 * configure: Regenerate.
648 * testsuite/Makefile.in: Regenerate.
649
17f35e23
DK
6502009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
651
652 * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
653 settings for LC_ALL and LANG.
654
281e33e1
JJ
6552009-11-25 Jakub Jelinek <jakub@redhat.com>
656
657 PR fortran/42162
658 * testsuite/libgomp.fortran/pr42162.f90: New test.
659
2b32c27d
JJ
6602009-11-13 Jakub Jelinek <jakub@redhat.com>
661
662 PR middle-end/42029
281e33e1 663 * testsuite/libgomp.c/pr42029.c: New test.
2b32c27d 664
89c74f4a
JJ
6652009-10-26 Jakub Jelinek <jakub@redhat.com>
666
667 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
668 *s. Accept ld version without text in ()s.
669 * configure: Regenerated.
670
7e06c3d6
EB
6712009-10-22 Razya Ladelsky <razya@il.ibm.com>
672
673 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan.
674
0046b1a7
RW
6752009-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
676
677 PR libgomp/41418
678 * configure.ac: Set FC to "no" if $GFORTRAN starts with "no"
679 or a hyphen (happens with fortran language disabled).
680 * configure: Regenerate.
681
c82852f7
RW
6822009-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
683
684 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
685 use sed script portable to Solaris /bin/sed for extracting ld
686 version.
687 * configure: Regenerate.
688
98f3eb1f
AM
6892009-09-17 Alexander Monakov <amonakov@ispras.ru>
690
691 * testsuite/libgomp.graphite/bounds.c: New test.
692
878f62e5
RW
6932009-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
694
695 * Makefile.am (libgomp_la_LINK): New.
696 * Makefile.in: Regenerate.
697
df58e648
RW
6982009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
699
700 * configure.ac (AC_PREREQ): Bump to 2.64.
701
5213506e
RW
7022009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
703
70fa0efa
RW
704 * Makefile.am (install-html, install-pdf): Remove.
705 * Makefile.in: Regenerate.
706
5213506e
RW
707 * Makefile.in: Regenerate.
708 * aclocal.m4: Regenerate.
709 * config.h.in: Regenerate.
710 * configure: Regenerate.
711 * testsuite/Makefile.in: Regenerate.
712
84fec8a5
RW
7132009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
714
715 * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
716 * Makefile.in: Regenerate.
717
197c68cc
DK
7182009-08-20 Dave Korn <dave.korn.cygwin@gmail.com>
719
720 * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.
721 * Makefile.in: Regenerate.
722
693d54f2
TB
7232009-08-19 Tobias Burnus <burnus@net-b.de>
724
725 PR fortran/41102
726 omp_lib.h.in: Fix -std=f95 errors.
727
728
8cac884c
DE
7292009-08-14 David Edelsohn <edelsohn@gnu.org>
730
731 * testsuite/libgomp.graphite: Move from gcc.dg/graphite.
732 * testsuite/libgomp.graphite/graphite_autopar.exp: Delete.
733 * testsuite/libgomp.graphite/graphite.exp: New.
734
78729ee2
AT
7352009-08-05 Andreas Tobler <a.tobler@schweiz.org>
736
737 * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared
738 only build.
739
b13b7f39
DD
7402009-08-04 David Daney <ddaney@caviumnetworks.com>
741
742 * config/linux/mutex.h (gomp_mutex_unlock): Add comment about
743 needed memory barrier semantics.
744 * config/linux/mips/mutex.h: New file.
745
1b3b24c2
RW
7462009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
747
748 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
749
396b7fa4
JM
7502009-07-16 Joseph Myers <joseph@codesourcery.com>
751
752 * configure: Regenerate.
753
33cde516
RS
7542009-07-11 Richard Sandiford <rdsandiford@googlemail.com>
755
756 PR testsuite/40699
757 PR testsuite/40707
758 PR testsuite/40709
759 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
760 * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
761 testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.
762
bc21bfa5
RS
7632009-07-02 Richard Sandiford <r.sandiford@uk.ibm.com>
764
765 * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
766 options when choosing a multilib.
767
b30bfd40
RS
7682009-06-30 Richard Sandiford <r.sandiford@uk.ibm.com>
769
770 * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
771 ld_library_path. Use add_path. Add just find_libgcc_s to
772 ld_library_path, not every libgcc multilib directory.
773 * testsuite/libgomp.c/c.exp (ld_library_path): Don't call
774 gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
775 * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
776 Use add_path.
777 * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
778
479c15c2
NF
7792009-06-09 Nathan Froyd <froydnj@codesourcery.com>
780
781 * Makefile.am (LTLDFLAGS): Define.
782 (LINK): Define.
783 * Makefile.in: Regenerate.
784
667e6f89
JB
7852009-05-27 Janne Blomqvist <jb@gcc.gnu.org>
786
787 PR fortran/39718
788 * testsuite/libgomp.fortran/fortran.exp: Don't link with
789 libgfortranbegin, check existence of libgfortran.a instead of
790 libgfortranbegin.a.
791
6dea8e99
JJ
7922009-05-20 Jakub Jelinek <jakub@redhat.com>
793
794 PR libgomp/40174
795 * team.c (gomp_thread_start): Destroy thr->release semaphore.
796 (gomp_free_pool_helper): Likewise.
797
34d01e1d
VL
7982009-04-20 Vasilis Liaskovitis <vliaskov@gmail.com>
799 Jakub Jelinek <jakub@redhat.com>
800
801 PR fortran/35423
802 * testsuite/libgomp.fortran/workshare2.f90: New test.
803
748086b7
JJ
8042009-04-09 Nick Clifton <nickc@redhat.com>
805
806 * iter.c: Change copyright header to refer to version 3 of the
807 GNU General Public License with version 3.1 of the GCC Runtime
808 Library Exception and to point readers at the COPYING3 and
809 COPYING3.RUNTIME files and the FSF's license web page.
810 * alloc.c: Likewise.
811 * barrier.c: Likewise.
812 * config/bsd/proc.c: Likewise.
813 * config/linux/affinity.c: Likewise.
814 * config/linux/alpha/futex.h: Likewise.
815 * config/linux/bar.c: Likewise.
816 * config/linux/bar.h: Likewise.
817 * config/linux/ia64/futex.h: Likewise.
818 * config/linux/ia64/mutex.h: Likewise.
819 * config/linux/lock.c: Likewise.
820 * config/linux/mips/futex.h: Likewise.
821 * config/linux/mutex.c: Likewise.
822 * config/linux/mutex.h: Likewise.
823 * config/linux/powerpc/futex.h: Likewise.
824 * config/linux/proc.c: Likewise.
825 * config/linux/ptrlock.c: Likewise.
826 * config/linux/ptrlock.h: Likewise.
827 * config/linux/s390/futex.h: Likewise.
828 * config/linux/sem.c: Likewise.
829 * config/linux/sem.h: Likewise.
830 * config/linux/sparc/futex.h: Likewise.
831 * config/linux/wait.h: Likewise.
832 * config/linux/x86/futex.h: Likewise.
833 * config/mingw32/proc.c: Likewise.
834 * config/mingw32/time.c: Likewise.
835 * config/posix/affinity.c: Likewise.
836 * config/posix/bar.c: Likewise.
837 * config/posix/bar.h: Likewise.
838 * config/posix/lock.c: Likewise.
839 * config/posix/mutex.h: Likewise.
840 * config/posix/proc.c: Likewise.
841 * config/posix/ptrlock.h: Likewise.
842 * config/posix/sem.c: Likewise.
843 * config/posix/sem.h: Likewise.
844 * config/posix/time.c: Likewise.
845 * config/posix95/lock.c: Likewise.
846 * critical.c: Likewise.
847 * env.c: Likewise.
848 * error.c: Likewise.
849 * fortran.c: Likewise.
850 * iter_ull.c: Likewise.
851 * libgomp.h: Likewise.
852 * libgomp_f.h.in: Likewise.
853 * libgomp_g.h: Likewise.
854 * loop.c: Likewise.
855 * loop_ull.c: Likewise.
856 * omp.h.in: Likewise.
857 * omp_lib.f90.in: Likewise.
858 * omp_lib.h.in: Likewise.
859 * ordered.c: Likewise.
860 * parallel.c: Likewise.
861 * sections.c: Likewise.
862 * single.c: Likewise.
863 * task.c: Likewise.
864 * team.c: Likewise.
865 * work.c: Likewise.
866
8672009-04-09 Jakub Jelinek <jakub@redhat.com>
868
869 * testsuite/config/default.exp: Change copyright header to refer to
870 version 3 of the GNU General Public License and to point readers
871 at the COPYING3 file and the FSF's license web page.
872
4f0ae266
JJ
8732009-04-08 Jakub Jelinek <jakub@redhat.com>
874
875 PR middle-end/39573
876 * libgomp.c++/pr39573.C: New test.
877
03742a9b
JJ
8782009-04-01 Jakub Jelinek <jakub@redhat.com>
879
880 PR other/39591
881 * testsuite/libgomp.c/pr39591-1.c: New test.
882 * testsuite/libgomp.c/pr39591-2.c: New test.
883 * testsuite/libgomp.c/pr39591-3.c: New test.
884
e50ea10b
UB
8852009-03-25 Uros Bizjak <ubizjak@gmail.com>
886
887 * testsuite/libgomp.c/atomic-5.c: Cleanup cpuid usage.
888 * testsuite/libgomp.c/atomic-6.c: Ditto.
889
c5cdb03f
JJ
8902009-03-23 Jakub Jelinek <jakub@redhat.com>
891
892 PR c/39495
893 * testsuite/libgomp.c/loop-12.c: New test.
894 * testsuite/libgomp.c/loop-11.c: New test.
895 * testsuite/libgomp.c++/loop-11.C: New test.
896 * testsuite/libgomp.c++/loop-12.C: New test.
897 * testsuite/libgomp.c++/for-8.C: New test.
898
7a9d3fe8
RW
8992009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
900
901 * configure: Regenerate.
902
3ad6b266
JJ
9032009-02-11 Jakub Jelinek <jakub@redhat.com>
904
905 PR middle-end/39154
906 * testsuite/libgomp.c/pr39154.c: New test.
907
b39dea08
ILT
9082009-01-30 Ian Lance Taylor <iant@google.com>
909
910 * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
911 libgomp_ld_is_gold. Get gold version number.
912 (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
913 * configure: Rebuild.
914
72c66596
IS
9152009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
916
e50ea10b 917 * testsuite/lib/libgomp.exp: Add -B option for targets that
72c66596
IS
918 use libgfortran.a%s in their specs.
919
876080ff
JJ
9202009-01-07 Jakub Jelinek <jakub@redhat.com>
921
922 PR libgomp/38086
923 * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New check.
924 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undefine if
925 HAVE_AS_SYMVER_DIRECTIVE is not defined.
926 * configure: Regenerated.
927 * config.h.in: Likewise.
928
e4ebaef3
JJ
9292008-12-28 Jakub Jelinek <jakub@redhat.com>
930
931 PR c++/38650
932 * testsuite/libgomp.c/pr38650.c: New test.
933 * testsuite/libgomp.c++/pr38650.C: New test.
934
382017a6
JJ
9352008-12-27 Jakub Jelinek <jakub@redhat.com>
936
937 * testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
938
79644b27
UB
9392008-12-26 Uros Bizjak <ubizjak@gmail.com>
940
941 * testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
942
baafc534
RW
9432008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
944
945 * configure: Regenerate.
946
d9c194cb
JJ
9472008-12-08 Jakub Jelinek <jakub@redhat.com>
948
949 PR middle-end/36802
950 * testsuite/libgomp.c/pr36802-1.c: New test.
951 * testsuite/libgomp.c/pr36802-2.c: New test.
952 * testsuite/libgomp.c/pr36802-3.c: New test.
953
86a182bf
JJ
9542008-12-01 Janis Johnson <janis187@us.ibm.com>
955
956 PR libgomp/38270
957 * config/linux/powerpc/mutex.h: New.
958
956adfaf
JJ
9592008-12-01 Jakub Jelinek <jakub@redhat.com>
960
a2d4cdc9
JJ
961 PR c++/38257
962 * testsuite/libgomp.c++/for-7.C: New test.
963
956adfaf
JJ
964 PR c++/38348
965 * testsuite/libgomp.c++/for-6.C: New test.
966
d4038ca2
JJ
9672008-11-26 Janis Johnson <janis187@us.ibm.com>
968
969 PR testsuite/28870
970 * testsuite/lib/libgomp.exp: Include new timeout library files.
971 (libgomp_target_compile): Set timeout value from new proc.
972
8b159eea
SE
9732008-11-13 Steve Ellcey <sje@cup.hp.com>
974
975 PR libgomp/37938
976 * config/linux/ia64/mutex.h: New.
977
5c6ed53a
TB
9782008-11-04 Tobias Burnus <burnus@net-b.de>
979
980 PR libgomp/37935
981 * libgomp.texi (Runtime library routines, environment variables):
982 Update for OpenMP version 3.0.
983
6b4a97ed
PG
9842008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
985 Steve Ellcey <sje@cup.hp.com>
986
987 * configure: Regenerate for new libtool.
988 * Makefile.in: Ditto.
989 * testsuite/Makefile.in: Ditto.
990
e2b34106
JJ
9912008-09-19 Jakub Jelinek <jakub@redhat.com>
992 Andreas Tobler <a.tobler@schweiz.org>
993
994 * config/bsd/proc.c: New file.
8c3b3600 995 * configure.tgt (*-*-darwin*): Use config_path "bsd posix".
e2b34106
JJ
996 * configure.ac: Check for header <sys/sysctl.h>
997 * configure: Regenerate.
998 * config.h.in: Likewise.
999
3606b8bf
JJ
10002008-09-05 Janis Johnson <janis187@us.ibm.com>
1001
1002 * testsuite/ligbomp.c/c.exp: Unset lang_test_file only if it exists.
1003
6528b88d
AL
10042008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
1005
1006 * Makefile.am (libgomp_la_LDFLAGS): Add -no-undefined.
1007 * Makefile.in: Regenerated.
1008 * testsuite/Makefile.in: Regenerated.
1009
d9b14b12 10102008-08-21 Nathan Froyd <froydnj@codesourcery.com>
8c9570df 1011
a16b68bb 1012 * testsuite/lib/libgomp.exp (libgomp_init): Only set things that
8c9570df
NF
1013 depend on blddir if blddir exists.
1014 (libgomp_target_compile): Likewise.
1015 * testsuite/libgomp.c++/c++.exp: Likewise.
1016 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1017
70b1e376
RW
10182008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1019
1020 * libgomp.texi: Update to GFDL 1.2. Update copyright years.
1021 Do not list GPL as Invariant Section.
1022
318e8c3f
IG
10232008-07-28 Ilie Garbacea <ilie@mips.com>
1024 Chao-ying Fu <fu@mips.com>
1025
1026 * configure.tgt: Enable futex for MIPS.
1027 * config/linux/mips/futex.h: New file.
1028
4db72361
JJ
10292008-07-16 Jakub Jelinek <jakub@redhat.com>
1030
1031 * team.c (gomp_team_end): Free team immediately if it has
1032 just one thread.
1033
87bd23b8
DE
10342008-07-08 David Edelsohn <edelsohn@gnu.org>
1035
1036 * testsuite/libgomp.c++/c++.exp: Append multilib library path.
1037 * testsuite/libgomp.fortran/fortran.exp: Same.
1038 * testsuite/libgomp.c/c.exp: Same.
1039 * testsuite/lib/libgomp.exp: Append AIX libgcc pthread multilib
1040 directory to library path first.
1041
323ff903
KW
10422008-06-29 Krister Walfridsson <krister.walfridsson@gmail.com>
1043
1044 * env.c (parse_stacksize): Add cast to avoid warning.
1045 (parse_spincount): Likewise.
1046
b357f682
JJ
10472008-06-27 Jakub Jelinek <jakub@redhat.com>
1048
ca2b1311
JJ
1049 * testsuite/libgomp.c/loop-10.c: New test.
1050 * libgomp.c/loop-3.c (main): Add lastprivate clause.
1051 * libgomp.c++/loop-6.C (main): Likewise.
1052
b357f682
JJ
1053 PR debug/36617
1054 * testsuite/libgomp.c/debug-1.c: New test.
1055
09a46078
JJ
10562008-06-19 Jakub Jelinek <jakub@redhat.com>
1057
1058 * testsuite/libgomp.c/nqueens-1.c: New test.
1059
2368a460
JJ
1060 PR c++/36523
1061 * testsuite/libgomp.c++/task-7.C: New function.
1062
18c04407
RW
10632008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1064
1065 * configure: Regenerate.
1066
9c4e59e0
JDA
10672008-06-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1068
1069 * env.c (initialize_env): Always initialize gomp_remaining_threads_lock
1070 mutex when HAVE_SYNC_BUILTINS isn't defined.
1071
6ccde948
RW
10722008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1073
1074 * libgomp.texi (omp_test_lock): Fix typo.
1075
b896f9fd
TB
10762008-06-12 Tobias Burnus <burnus@net-b.de>
1077
1078 * omp_lib.f90.in: Add "implicit none".
1079
c34938a8
JJ
10802008-06-12 Jakub Jelinek <jakub@redhat.com>
1081
1082 PR middle-end/36506
1083 * testsuite/libgomp.c/reduction-5.c: New test.
1084
976e44e3
JJ
10852008-06-11 Jakub Jelinek <jakub@redhat.com>
1086
5f836cbb
JJ
1087 * libgomp.h (struct gomp_task): Add in_tied_task field.
1088 * task.c (gomp_init_task): Initialize it.
1089 (GOMP_task): Likewise. Call gomp_team_barrier_set_task_pending
1090 unconditionally. Don't call gomp_team_barrier_wake if
1091 current task is implicit or if(0) from implicit and number of
1092 running tasks is equal to nthreads - 1.
1093
01501fc8
JJ
1094 PR libgomp/36471
1095 * omp_lib.f90.in (omp_get_ancestor_thread_num_8,
1096 omp_get_team_size_8): Fix pastos.
1097
976e44e3
JJ
1098 PR libgomp/36469
1099 * configure.ac: Add AC_CHECK_FUNCS (strtoull).
1100 * configure: Regenerated.
1101 * config.h.in: Regenerated.
1102 * env.c (strtoull): Define to strtoul if HAVE_STRTOULL is not
1103 defined.
1104
e919209b
AT
11052008-06-06 Andreas Tobler <a.tobler@schweiz.org>
1106
1107 PR bootstrap/36452
1108 * loop_ull.c (GOMP_loop_ull_static_start): Adjust API.
1109 (GOMP_loop_ull_dynamic_start): Likewise.
1110 (GOMP_loop_ull_guided_start): Likewise.
1111 (GOMP_loop_ull_ordered_static_start): Likewise.
1112 (GOMP_loop_ull_ordered_dynamic_start): Likewise.
1113 (GOMP_loop_ull_ordered_guided_start): Likewise.
1114
a68ab351
JJ
11152008-06-06 Jakub Jelinek <jakub@redhat.com>
1116 Richard Henderson <rth@redhat.com>
1117 Ulrich Drepper <drepper@redhat.com>
1118 Jakob Blomer <jakob.blomer@ira.uka.de>
1119
1120 * configure.ac (LIBGOMP_GNU_SYMBOL_VERSIONING): New AC_DEFINE.
1121 Substitute also OMP_*LOCK_25*.
1122 * configure: Regenerated.
1123 * config.h.in: Regenerated.
1124 * Makefile.am (libgomp_la_SOURCES): Add loop_ull.c, iter_ull.c,
1125 ptrlock.c and task.c.
1126 * Makefile.in: Regenerated.
1127 * testsuite/Makefile.in: Regenerated.
1128 * task.c: New file.
1129 * loop_ull.c: New file.
1130 * iter_ull.c: New file.
1131 * libgomp.h: Include ptrlock.h.
1132 (enum gomp_task_kind): New type.
1133 (struct gomp_team): Add task_lock, task_queue, task_count,
1134 task_running_count, single_count fields. Add
1135 work_share_list_free_lock ifndef HAVE_SYNC_BUILTINS.
1136 Remove work_share_lock, generation_mask,
1137 oldest_live_gen, num_live_gen and init_work_shares fields, add
1138 work work_share_list_alloc, work_share_list_free and work_share_chunk
1139 fields. Change work_shares from pointer to pointers into an array.
1140 Change ordered_release field into gomp_sem_t ** from flexible array
1141 member. Add implicit_task and initial_work_shares fields.
1142 Move close to the end of the struct.
1143 (struct gomp_team_state): Add single_count, last_work_share,
1144 active_level and level fields, remove work_share_generation.
1145 (gomp_barrier_handle_tasks): New prototype.
1146 (gomp_finish_task): New inline function.
1147 (struct gomp_work_share): Move chunk_size, end, incr into
1148 transparent union/struct, add chunk_size_ull, end_ll, incr_ll and
1149 next_ll fields. Reshuffle fields. Add next_alloc,
1150 next_ws, next_free and inline_ordered_team_ids fields, change
1151 ordered_team_ids into pointer from flexible array member.
1152 Add mode field. Put lock and next into a different cache line
1153 from most of the write-once fields.
1154 (gomp_iter_ull_static_next, gomp_iter_ull_dynamic_next_locked,
1155 gomp_iter_ull_guided_next_locked, gomp_iter_ull_dynamic_next,
1156 gomp_iter_ull_guided_next): New prototypes.
1157 (gomp_new_icv): New prototype.
1158 (struct gomp_thread): Add thread_pool and task fields.
1159 (struct gomp_thread_pool): New type.
1160 (gomp_new_team): New prototype.
1161 (gomp_team_start): Change type of last argument.
1162 (gomp_new_work_share): Removed.
1163 (gomp_init_work_share, gomp_fini_work_share): New prototypes.
1164 (gomp_work_share_init_done): New static inline.
1165 (gomp_throttled_spin_count_var, gomp_available_cpus,
1166 gomp_managed_threads): New extern decls.
1167 (gomp_init_task): New prototype.
1168 (gomp_spin_count_var): New extern var decl.
1169 (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef if no visibility
1170 or no alias support, or if not PIC.
1171 (gomp_init_lock_30, gomp_destroy_lock_30, gomp_set_lock_30,
1172 gomp_unset_lock_30, gomp_test_lock_30, gomp_init_nest_lock_30,
1173 gomp_destroy_nest_lock_30, gomp_set_nest_lock_30,
1174 gomp_unset_nest_lock_30, gomp_test_nest_lock_30, gomp_init_lock_25,
1175 gomp_destroy_lock_25, gomp_set_lock_25, gomp_unset_lock_25,
1176 gomp_test_lock_25, gomp_init_nest_lock_25, gomp_destroy_nest_lock_25,
1177 gomp_set_nest_lock_25, gomp_unset_nest_lock_25,
1178 gomp_test_nest_lock_25): New prototypes.
1179 (omp_lock_symver, strong_alias): Define.
1180 (gomp_remaining_threads_count, gomp_remaining_threads_lock): New
1181 decls.
1182 (gomp_end_task): New.
1183 (struct gomp_task_icv, gomp_global_icv): New.
1184 (gomp_thread_limit_var, gomp_max_active_levels_var): New.
1185 (struct gomp_task): New.
1186 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
1187 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
1188 (gomp_icv): New.
1189 (gomp_schedule_type): Reorder enum to match
1190 omp_sched_t.
1191 * team.c (struct gomp_thread_start_data): Add thread_pool and task
1192 fields.
1193 (gomp_thread_start): Add gomp_team_barrier_wait call.
1194 For non-nested case remove clearing of docked thread thr fields.
1195 Use pool fields instead of global gomp_* variables. Use
1196 gomp_barrier_wait_last when needed. Initialize ts.active_level.
1197 Create tasks for each member thread.
1198 (free_team): Only destroy team barrier, task_lock here and free it.
1199 (gomp_free_thread): Free last_team if non-NULL.
1200 (gomp_team_end): Call gomp_team_barrier_wait instead of
1201 gomp_barrier_wait. For nested case call one extra
1202 gomp_barrier_wait. Move here some destruction from free_team.
1203 Call free_team on pool->last_team if any, rather than freeing
1204 current team. Destroy work_share_list_free_lock ifndef
1205 HAVE_SYNC_BUILTINS.
1206 (gomp_new_icv): New function.
1207 (gomp_threads, gomp_threads_size, gomp_threads_used,
1208 gomp_threads_dock): Removed.
1209 (gomp_thread_destructor): New variable.
1210 (gomp_new_thread_pool, gomp_free_pool_helper, gomp_free_thread): New
1211 functions.
1212 (gomp_team_start): Create new pool if current thread doesn't have
3e348fcc 1213 one. Use pool fields instead of global gomp_* variables.
a68ab351
JJ
1214 Initialize thread_pool field for new threads. Clear single_count.
1215 Change last argument from ws to team, don't create
1216 new team, set ts.work_share to &team->work_shares[0] and clear
1217 ts.last_work_share. Don't clear ts.work_share_generation.
1218 If number of threads changed, adjust atomically gomp_managed_threads.
1219 Use gomp_init_task instead of gomp_new_task,
1220 set thr->task to the corresponding implicit_task array entry.
1221 Create tasks for each member thread. Initialize ts.level.
1222 (initialize_team): Call pthread_key_create on
1223 gomp_thread_destructor.
1224 (team_destructor): New function.
1225 (new_team): Removed.
1226 (gomp_new_team): New function.
1227 (free_team): Free gomp_work_share blocks chained through next_alloc,
1228 instead of freeing work_shares and destroying work_share_lock.
1229 (gomp_team_end): Call gomp_fini_work_share. If number of threads
1230 changed, adjust atomically gomp_managed_threads. Use gomp_end_task.
1231 * barrier.c (GOMP_barrier): Call gomp_team_barrier_wait instead
1232 of gomp_barrier_wait.
1233 * single.c (GOMP_single_copy_start): Call gomp_team_barrier_wait
1234 instead of gomp_barrier_wait. Call gomp_work_share_init_done
1235 if gomp_work_share_start returned true. Don't unlock ws->lock.
1236 (GOMP_single_copy_end): Call gomp_team_barrier_wait instead
1237 of gomp_barrier_wait.
1238 (GOMP_single_start): Rewritten if HAVE_SYNC_BUILTINS. Call
1239 gomp_work_share_init_done if gomp_work_share_start returned true.
1240 Don't unlock ws->lock.
1241 * work.c: Include stddef.h.
1242 (free_work_share): Use work_share_list_free_lock instead
1243 of atomic chaining ifndef HAVE_SYNC_BUILTINS. Add team argument.
1244 Call gomp_fini_work_share and then either free ws if orphaned, or
1245 put it into work_share_list_free list of the current team.
1246 (alloc_work_share, gomp_init_work_share, gomp_fini_work_share): New
1247 functions.
1248 (gomp_work_share_start, gomp_work_share_end,
1249 gomp_work_share_end_nowait): Rewritten.
1250 * omp_lib.f90.in Change some tabs to spaces to prevent warnings.
1251 (openmp_version): Set to 200805.
1252 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
1253 omp_sched_guided, omp_sched_auto): New parameters.
1254 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
1255 omp_set_max_active_levels, omp_get_max_active_levels,
1256 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
1257 omp_get_active_level): New interfaces.
1258 * omp_lib.h.in (openmp_version): Set to 200805.
1259 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
1260 omp_sched_guided, omp_sched_auto): New parameters.
1261 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
1262 omp_set_max_active_levels, omp_get_max_active_levels,
1263 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
1264 omp_get_active_level): New externals.
1265 * loop.c: Include limits.h.
1266 (GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Handle
1267 GFS_AUTO.
1268 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start):
1269 Likewise. Use gomp_icv.
1270 (gomp_loop_static_start, gomp_loop_dynamic_start): Clear
1271 ts.static_trip here.
1272 (gomp_loop_static_start, gomp_loop_ordered_static_start): Call
1273 gomp_work_share_init_done after gomp_loop_init. Don't unlock ws->lock.
1274 (gomp_loop_dynamic_start, gomp_loop_guided_start): Call
1275 gomp_work_share_init_done after gomp_loop_init. If HAVE_SYNC_BUILTINS,
1276 don't unlock ws->lock, otherwise lock it.
1277 (gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start): Call
1278 gomp_work_share_init_done after gomp_loop_init. Lock ws->lock.
1279 (gomp_parallel_loop_start): Call gomp_new_team instead of
1280 gomp_new_work_share. Call gomp_loop_init on &team->work_shares[0].
1281 Adjust gomp_team_start caller. Pass 0 as second argument to
1282 gomp_resolve_num_threads.
1283 (gomp_loop_init): For GFS_DYNAMIC, multiply ws->chunk_size by incr.
1284 If adding ws->chunk_size nthreads + 1 times after end won't
1285 overflow, set ws->mode to 1.
1286 * libgomp_g.h (GOMP_loop_ull_static_start, GOMP_loop_ull_dynamic_start,
1287 GOMP_loop_ull_guided_start, GOMP_loop_ull_runtime_start,
1288 GOMP_loop_ull_ordered_static_start,
1289 GOMP_loop_ull_ordered_dynamic_start,
1290 GOMP_loop_ull_ordered_guided_start,
1291 GOMP_loop_ull_ordered_runtime_start, GOMP_loop_ull_static_next,
1292 GOMP_loop_ull_dynamic_next, GOMP_loop_ull_guided_next,
1293 GOMP_loop_ull_runtime_next, GOMP_loop_ull_ordered_static_next,
1294 GOMP_loop_ull_ordered_dynamic_next, GOMP_loop_ull_ordered_guided_next,
1295 GOMP_loop_ull_ordered_runtime_next, GOMP_task, GOMP_taskwait): New
1296 prototypes.
1297 * libgomp.map: Export lock routines also @@OMP_2.0.
1298 (GOMP_loop_ordered_dynamic_first,
1299 GOMP_loop_ordered_guided_first, GOMP_loop_ordered_runtime_first,
1300 GOMP_loop_ordered_static_first): Remove.
1301 (GOMP_loop_ull_dynamic_next, GOMP_loop_ull_dynamic_start,
1302 GOMP_loop_ull_guided_next, GOMP_loop_ull_guided_start,
1303 GOMP_loop_ull_ordered_dynamic_next,
1304 GOMP_loop_ull_ordered_dynamic_start,
1305 GOMP_loop_ull_ordered_guided_next,
1306 GOMP_loop_ull_ordered_guided_start,
1307 GOMP_loop_ull_ordered_runtime_next,
1308 GOMP_loop_ull_ordered_runtime_start,
1309 GOMP_loop_ull_ordered_static_next,
1310 GOMP_loop_ull_ordered_static_start,
1311 GOMP_loop_ull_runtime_next, GOMP_loop_ull_runtime_start,
1312 GOMP_loop_ull_static_next, GOMP_loop_ull_static_start,
1313 GOMP_task, GOMP_taskwait): Export @@GOMP_2.0.
1314 (omp_set_schedule, omp_get_schedule,
1315 omp_get_thread_limit, omp_set_max_active_levels,
1316 omp_get_max_active_levels, omp_get_level,
1317 omp_get_ancestor_thread_num, omp_get_team_size, omp_get_active_level,
1318 omp_set_schedule_, omp_set_schedule_8_,
1319 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
1320 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
1321 omp_get_max_active_levels_, omp_get_level_,
1322 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
1323 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
1324 New exports @@OMP_3.0.
1325 * omp.h.in (omp_sched_t): New type.
1326 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
1327 omp_set_max_active_levels, omp_get_max_active_levels,
1328 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
1329 omp_get_active_level): New prototypes.
1330 * env.c (gomp_spin_count_var, gomp_throttled_spin_count_var,
1331 gomp_available_cpus, gomp_managed_threads, gomp_max_active_levels_var,
1332 gomp_thread_limit_var, gomp_remaining_threads_count,
1333 gomp_remaining_threads_lock): New variables.
1334 (parse_spincount): New function.
1335 (initialize_env): Call gomp_init_num_threads unconditionally.
1336 Initialize gomp_available_cpus. Call parse_spincount,
1337 initialize gomp_{,throttled_}spin_count_var
1338 depending on presence and value of OMP_WAIT_POLICY and
1339 GOMP_SPINCOUNT env vars. Handle GOMP_BLOCKTIME env var.
1340 Handle OMP_WAIT_POLICY, OMP_MAX_ACTIVE_LEVELS,
1341 OMP_THREAD_LIMIT, OMP_STACKSIZE env vars. Handle unit specification
1342 for GOMP_STACKSIZE. Initialize gomp_remaining_threads_count and
1343 gomp_remaining_threads_lock if needed. Use gomp_global_icv.
1344 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
1345 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
1346 (gomp_global_icv): New.
1347 (parse_schedule): Use it. Parse "auto".
1348 (omp_set_num_threads): Use gomp_icv.
1349 (omp_set_dynamic, omp_get_dynamic, omp_set_nested, omp_get_nested):
1350 Likewise.
1351 (omp_get_max_threads): Move from parallel.c.
1352 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
1353 omp_set_max_active_levels, omp_get_max_active_levels): New functions,
1354 add ialias.
1355 (parse_stacksize, parse_wait_policy): New functions.
1356 * fortran.c: Rewrite lock wrappers, if symbol versioning provide
1357 both wrappers for compatibility and new locks.
1358 (omp_set_schedule, omp_get_schedule,
1359 omp_get_thread_limit, omp_set_max_active_levels,
1360 omp_get_max_active_levels, omp_get_level,
1361 omp_get_ancestor_thread_num, omp_get_team_size,
1362 omp_get_active_level): New ialias_redirect.
1363 (omp_set_schedule_, omp_set_schedule_8_,
1364 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
1365 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
1366 omp_get_max_active_levels_, omp_get_level_,
1367 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
1368 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
1369 New functions.
1370 * parallel.c: Include limits.h.
1371 (gomp_resolve_num_threads): Add count argument. Rewritten.
1372 (GOMP_parallel_start): Call gomp_new_team and pass that as last
1373 argument to gomp_team_start. Pass 0 as second argument to
1374 gomp_resolve_num_threads.
1375 (GOMP_parallel_end): Decrease gomp_remaining_threads_count
1376 if gomp_thread_limit_var != ULONG_MAX.
1377 (omp_in_parallel): Implement using ts.active_level.
1378 (omp_get_max_threads): Move to env.c.
1379 (omp_get_level, omp_get_ancestor_thread_num,
1380 omp_get_team_size, omp_get_active_level): New functions,
1381 add ialias.
1382 * sections.c (GOMP_sections_start): Call gomp_work_share_init_done
1383 after gomp_sections_init. If HAVE_SYNC_BUILTINS, call
1384 gomp_iter_dynamic_next instead of the _locked variant and don't take
1385 lock around it, otherwise acquire it before calling
1386 gomp_iter_dynamic_next_locked.
1387 (GOMP_sections_next): If HAVE_SYNC_BUILTINS, call
1388 gomp_iter_dynamic_next instead of the _locked variant and don't take
1389 lock around it.
1390 (GOMP_parallel_sections_start): Call gomp_new_team instead of
1391 gomp_new_work_share. Call gomp_sections_init on &team->work_shares[0].
1392 Adjust gomp_team_start caller. Pass count as second argument to
1393 gomp_resolve_num_threads, don't adjust num_threads after the call.
1394 Use gomp_icv.
1395 * iter.c (gomp_iter_dynamic_next_locked): Don't multiply
1396 ws->chunk_size by incr.
1397 (gomp_iter_dynamic_next): Likewise. If ws->mode, use more efficient
1398 code.
1399 * libgomp_f.h.in (omp_lock_25_arg_t, omp_nest_lock_25_arg_t): New
1400 types.
1401 (omp_lock_25_arg, omp_nest_lock_25_arg): New macros.
1402 (omp_check_defines): Check even the compat defines.
1403 * config/linux/ptrlock.c: New file.
1404 * config/linux/ptrlock.h: New file.
1405 * config/linux/wait.h: New file.
1406 * config/posix/ptrlock.c: New file.
1407 * config/posix/ptrlock.h: New file.
1408 * config/linux/bar.h (gomp_team_barrier_wait,
1409 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
1410 (gomp_team_barrier_set_task_pending,
1411 gomp_team_barrier_clear_task_pending,
1412 gomp_team_barrier_set_waiting_for_tasks,
1413 gomp_team_barrier_waiting_for_tasks,
1414 gomp_team_barrier_done): New inlines.
1415 (gomp_barrier_t): Rewritten.
1416 (gomp_barrier_state_t): New typedef.
1417 (gomp_barrier_init, gomp_barrier_reinit, gomp_barrier_destroy,
1418 gomp_barrier_wait_start): Rewritten.
1419 (gomp_barrier_wait_end): Change second argument to
1420 gomp_barrier_state_t.
1421 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
1422 inlines.
1423 * config/linux/bar.c: Include wait.h instead of libgomp.h and
1424 futex.h.
1425 (gomp_barrier_wait_end): Rewritten.
1426 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
1427 gomp_team_barrier_wake, gomp_barrier_wait_last): New functions.
1428 * config/posix/bar.h (gomp_barrier_t): Add generation field.
1429 (gomp_barrier_state_t): New typedef.
1430 (gomp_team_barrier_wait,
1431 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
1432 (gomp_barrier_wait_start): Or all but low 2 bits from generation
1433 into the return value. Return gomp_barrier_state_t.
1434 (gomp_team_barrier_set_task_pending,
1435 gomp_team_barrier_clear_task_pending,
1436 gomp_team_barrier_set_waiting_for_tasks,
1437 gomp_team_barrier_waiting_for_tasks,
1438 gomp_team_barrier_done): New inlines.
1439 (gomp_barrier_wait_end): Change second argument to
1440 gomp_barrier_state_t.
1441 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
1442 inlines.
1443 * config/posix/bar.c (gomp_barrier_init): Clear generation field.
1444 (gomp_barrier_wait_end): Change second argument to
3e348fcc 1445 gomp_barrier_state_t.
a68ab351
JJ
1446 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
1447 gomp_team_barrier_wake): New functions.
1448 * config/linux/mutex.c: Include wait.h instead of libgomp.h and
1449 futex.h.
1450 (gomp_futex_wake, gomp_futex_wait): New variables.
1451 (gomp_mutex_lock_slow): Call do_wait instead of futex_wait.
1452 * config/linux/lock.c: Rewrite to make locks task owned,
1453 for backwards compatibility provide the old entrypoints
1454 if symbol versioning. Include wait.h instead of libgomp.h and
1455 futex.h.
1456 (gomp_set_nest_lock_25): Call do_wait instead of futex_wait.
1457 * config/posix95/lock.c: Rewrite to make locks task owned,
1458 for backwards compatibility provide the old entrypoints
1459 if symbol versioning.
1460 * config/posix/lock.c: Rewrite to make locks task owned,
1461 for backwards compatibility provide the old entrypoints
1462 if symbol versioning.
1463 * config/linux/proc.c (gomp_init_num_threads): Use gomp_global_icv.
1464 (get_num_procs, gomp_dynamic_max_threads): Use gomp_icv.
1465 * config/posix/proc.c, config/mingw32/proc.c: Similarly.
1466 * config/linux/powerpc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1467 (sys_futex0): Return error code.
1468 (futex_wake, futex_wait): If ENOSYS was returned, clear
1469 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1470 (cpu_relax, atomic_write_barrier): New static inlines.
1471 * config/linux/alpha/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1472 (futex_wake, futex_wait): If ENOSYS was returned, clear
1473 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1474 (cpu_relax, atomic_write_barrier): New static inlines.
1475 * config/linux/x86/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1476 (sys_futex0): Return error code.
1477 (futex_wake, futex_wait): If ENOSYS was returned, clear
1478 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1479 (cpu_relax, atomic_write_barrier): New static inlines.
1480 * config/linux/s390/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1481 (sys_futex0): Return error code.
1482 (futex_wake, futex_wait): If ENOSYS was returned, clear
1483 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1484 (cpu_relax, atomic_write_barrier): New static inlines.
1485 * config/linux/ia64/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1486 (sys_futex0): Return error code.
1487 (futex_wake, futex_wait): If ENOSYS was returned, clear
1488 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1489 (cpu_relax, atomic_write_barrier): New static inlines.
1490 * config/linux/sparc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
1491 (sys_futex0): Return error code.
1492 (futex_wake, futex_wait): If ENOSYS was returned, clear
1493 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
1494 (cpu_relax, atomic_write_barrier): New static inlines.
1495 * config/linux/sem.c: Include wait.h instead of libgomp.h and
1496 futex.h.
1497 (gomp_sem_wait_slow): Call do_wait instead of futex_wait.
1498 * config/linux/affinity.c: Assume HAVE_SYNC_BUILTINS.
1499 * config/linux/omp-lock.h (omp_lock_25_t, omp_nest_lock_25_t): New
1500 types.
1501 (omp_nest_lock_t): Change owner into void *, add lock field.
1502 * config/posix95/omp-lock.h: Include semaphore.h.
1503 (omp_lock_25_t, omp_nest_lock_25_t): New types.
1504 (omp_lock_t): Use sem_t instead of mutex if semaphores
1505 aren't broken.
1506 (omp_nest_lock_t): Likewise. Change owner to void *.
1507 * config/posix/omp-lock.h: Include semaphore.h.
1508 (omp_lock_25_t, omp_nest_lock_25_t): New types.
1509 (omp_lock_t): Use sem_t instead of mutex if semaphores
1510 aren't broken.
1511 (omp_nest_lock_t): Likewise. Add owner field.
1512
15132008-06-06 Jakub Jelinek <jakub@redhat.com>
1514
1515 * testsuite/libgomp.c/collapse-1.c: New test.
1516 * testsuite/libgomp.c/collapse-2.c: New test.
1517 * testsuite/libgomp.c/collapse-3.c: New test.
1518 * testsuite/libgomp.c/icv-1.c: New test.
1519 * testsuite/libgomp.c/icv-2.c: New test.
1520 * testsuite/libgomp.c/lib-2.c: New test.
1521 * testsuite/libgomp.c/lock-1.c: New test.
1522 * testsuite/libgomp.c/lock-2.c: New test.
1523 * testsuite/libgomp.c/lock-3.c: New test.
1524 * testsuite/libgomp.c/loop-4.c: New test.
1525 * testsuite/libgomp.c/loop-5.c: New test.
1526 * testsuite/libgomp.c/loop-6.c: New test.
1527 * testsuite/libgomp.c/loop-7.c: New test.
1528 * testsuite/libgomp.c/loop-8.c: New test.
1529 * testsuite/libgomp.c/loop-9.c: New test.
1530 * testsuite/libgomp.c/nested-3.c: New test.
1531 * testsuite/libgomp.c/nestedfn-6.c: New test.
1532 * testsuite/libgomp.c/sort-1.c: New test.
1533 * testsuite/libgomp.c/task-1.c: New test.
1534 * testsuite/libgomp.c/task-2.c: New test.
1535 * testsuite/libgomp.c/task-3.c: New test.
1536 * testsuite/libgomp.c/task-4.c: New test.
1537 * testsuite/libgomp.c++/c++.exp: Add libstdc++-v3 build includes
1538 to C++ testsuite default compiler options.
1539 * testsuite/libgomp.c++/collapse-1.C: New test.
1540 * testsuite/libgomp.c++/collapse-2.C: New test.
1541 * testsuite/libgomp.c++/ctor-10.C: New test.
1542 * testsuite/libgomp.c++/for-1.C: New test.
1543 * testsuite/libgomp.c++/for-2.C: New test.
1544 * testsuite/libgomp.c++/for-3.C: New test.
1545 * testsuite/libgomp.c++/for-4.C: New test.
1546 * testsuite/libgomp.c++/for-5.C: New test.
1547 * testsuite/libgomp.c++/loop-8.C: New test.
1548 * testsuite/libgomp.c++/loop-9.C: New test.
1549 * testsuite/libgomp.c++/loop-10.C: New test.
1550 * testsuite/libgomp.c++/task-1.C: New test.
1551 * testsuite/libgomp.c++/task-2.C: New test.
1552 * testsuite/libgomp.c++/task-3.C: New test.
1553 * testsuite/libgomp.c++/task-4.C: New test.
1554 * testsuite/libgomp.c++/task-5.C: New test.
1555 * testsuite/libgomp.c++/task-6.C: New test.
1556 * testsuite/libgomp.fortran/allocatable1.f90: New test.
1557 * testsuite/libgomp.fortran/allocatable2.f90: New test.
1558 * testsuite/libgomp.fortran/allocatable3.f90: New test.
1559 * testsuite/libgomp.fortran/allocatable4.f90: New test.
1560 * testsuite/libgomp.fortran/collapse1.f90: New test.
1561 * testsuite/libgomp.fortran/collapse2.f90: New test.
1562 * testsuite/libgomp.fortran/collapse3.f90: New test.
1563 * testsuite/libgomp.fortran/collapse4.f90: New test.
1564 * testsuite/libgomp.fortran/lastprivate1.f90: New test.
1565 * testsuite/libgomp.fortran/lastprivate2.f90: New test.
1566 * testsuite/libgomp.fortran/lib4.f90: New test.
1567 * testsuite/libgomp.fortran/lock-1.f90: New test.
1568 * testsuite/libgomp.fortran/lock-2.f90: New test.
1569 * testsuite/libgomp.fortran/nested1.f90: New test.
1570 * testsuite/libgomp.fortran/nestedfn4.f90: New test.
1571 * testsuite/libgomp.fortran/strassen.f90: New test.
1572 * testsuite/libgomp.fortran/tabs1.f90: New test.
1573 * testsuite/libgomp.fortran/tabs2.f: New test.
1574 * testsuite/libgomp.fortran/task1.f90: New test.
1575 * testsuite/libgomp.fortran/task2.f90: New test.
1576 * testsuite/libgomp.fortran/vla4.f90: Add dg-warning.
1577 * testsuite/libgomp.fortran/vla5.f90: Likewise.
1578 * testsuite/libgomp.c/pr26943-2.c: Likewise.
1579 * testsuite/libgomp.c/pr26943-3.c: Likewise.
1580 * testsuite/libgomp.c/pr26943-4.c: Likewise.
1581
7a0112e7
JJ
15822008-05-23 Jakub Jelinek <jakub@redhat.com>
1583
1584 PR c++/36308
1585 * testsuite/libgomp.c++/ctor-11.C: New test.
1586 * testsuite/libgomp.c++/ctor-12.C: New test.
1587
91a5b394
JJ
15882008-05-15 Janis Johnson <janis187@us.ibm.com>
1589
1590 * testsuite/lib/libgomp.exp: Load torture-options.exp from gcc lib.
1591
c18c98c0
JJ
15922008-05-07 Jakub Jelinek <jakub@redhat.com>
1593
1594 PR middle-end/36106
1595 * testsuite/libgomp.c/atomic-5.c: New test.
1596 * testsuite/libgomp.c/atomic-6.c: New test.
1597 * testsuite/libgomp.c/autopar-1.c: New test.
1598
6d26724a
RW
15992008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1600
1601 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
1602 (LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
1603 (LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
1604 (LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
1605 * configure: Regenerate.
1606 * Makefile.in, testsuite/Makefile.in: Likewise.
1607
deb984e6
PB
16082008-04-18 Paolo Bonzini <bonzini@gnu.org>
1609
1610 PR bootstrap/35457
1611 * aclocal.m4: Regenerate.
1612 * configure: Regenerate.
1613
9e775963
JJ
16142008-03-18 Jakub Jelinek <jakub@redhat.com>
1615
8119fc93
JJ
1616 PR middle-end/35611
1617 * testsuite/libgomp.c/atomic-4.c: New test.
1618
9e775963
JJ
1619 PR libgomp/35625
1620 * iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
1621 (gomp_iter_guided_next): Likewise.
1622 * testsuite/libgomp.c/pr35625.c: New test.
1623
38d24731
RW
16242008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1625
1626 * aclocal.m4: Regenerate.
1627 * configure: Likewise.
1628 * Makefile.in: Likewise.
1629 * testsuite/Makefile.in: Likewise.
1630
d0fb20be
JJ
16312008-03-13 Jakub Jelinek <jakub@redhat.com>
1632
1633 PR middle-end/35185
1634 * testsuite/libgomp.c++/pr35185.C: New test.
1635
7c8f7639
JJ
16362008-03-12 Jakub Jelinek <jakub@redhat.com>
1637
1638 PR middle-end/35549
1639 * testsuite/libgomp.c/pr35549.c: New test.
1640
251923f5
JJ
16412008-03-06 Jakub Jelinek <jakub@redhat.com>
1642
1643 * testsuite/libgomp.c/atomic-3.c: New test.
1644
f489fba1
FXC
16452008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1646
1647 PR fortran/33197
251923f5 1648 * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
f489fba1
FXC
1649 .F08 file suffixes.
1650
a1b25e49
PG
16512008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
1652
1653 PR libgomp/33131
1654 * configure.ac: Add ACX_HEADER_STRING.
1655 * env.c: Include strings.h.
1656 * aclocal.m4: Regenerate.
1657 * config.h.in: Regenerate.
1658 * configure: Regenerate.
1659 * Makefile.in: Regenerate.
1660 * testsuite/Makefile.in: Regenerate.
1661
6837b3b8
JJ
16622008-02-15 Jakub Jelinek <jakub@redhat.com>
1663
ac84c062
JJ
1664 PR middle-end/35196
1665 * testsuite/libgomp.c/pr35196.c: New test.
1666
6837b3b8
JJ
1667 PR middle-end/35130
1668 * testsuite/libgomp.fortran/pr35130.f90: New test.
1669 * testsuite/libgomp.c/pr35130.c: New test.
1670
c256730c
JJ
16712008-01-25 Jakub Jelinek <jakub@redhat.com>
1672
1673 PR middle-end/33880
1674 * testsuite/libgomp.c/pr33880.c: New test.
1675 * testsuite/libgomp.fortran/pr33880.f90: New test.
1676
c8e95542 16772008-01-24 David Edelsohn <edelsohn@gnu.org>
d653fdfb
DE
1678
1679 * configure: Regenerate.
1680
0f3e711e
JJ
16812008-01-08 Jakub Jelinek <jakub@redhat.com>
1682
1683 * configure.ac: Move futex checking into ../config/futex.m4.
1684 * configure: Rebuilt.
1685 * aclocal.m4: Rebuilt.
1686 * Makefile.in: Rebuilt.
1687
1688 * configure.tgt: Rename have_tls to gcc_cv_have_tls to match
1689 2007-10-15 ../config/tls.m4 change.
1690
5259c813
JJ
16912007-12-19 Jakub Jelinek <jakub@redhat.com>
1692
1693 PR c++/34513
1694 * testsuite/libgomp.c/pr34513.c: New test.
1695 * testsuite/libgomp.c++/pr34513.C: New test.
1696
ae8d8879
JH
16972007-12-17 Jack Howarth <howarth@bromo.med.uc.edu>
1698
1699 PR target/32765
1700 * testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.
1701
2b4cf991
JJ
17022007-12-04 Jakub Jelinek <jakub@redhat.com>
1703
1704 * omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
1705
d2dda7fe
JJ
17062007-12-03 Jakub Jelinek <jakub@redhat.com>
1707
1708 * testsuite/libgomp.c/private-1.c: New test.
1709
d683ec81
PB
17102007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
1711 Paolo Bonzini <bonzini@gnu.org>
1712
1713 * Makefile.am: Use space as vpath separator. Use 'vpath %'
1714 instead of 'VPATH ='.
1715 * Makefile.in: Regenerate.
1716
a7415017
MK
17172007-11-23 Matthias Klose <doko@ubuntu.com>
1718
1719 * configure.ac: Adjust makeinfo version check.
1720 * configure: Regenerate.
1721
78e47463
JJ
17222007-11-10 Jakub Jelinek <jakub@redhat.com>
1723
1724 PR fortran/34020
1725 * testsuite/libgomp.fortran/pr34020.f90: New test.
1726
239371f9
JJ
17272007-11-06 Jakub Jelinek <jakub@redhat.com>
1728
1729 PR c++/33894
1730 * testsuite/libgomp.c++/atomic-1.C: New test.
1731
98a5fa94
JJ
17322007-10-25 Jakub Jelinek <jakub@redhat.com>
1733
1734 PR libgomp/33275
1735 * testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
1736 Make x and y integers rather than (implicit) reals. Add private (j)
1737 clause to the last omp parallel.
1738
3afcaaf4
MR
17392007-10-15 Maciej W. Rozycki <macro@linux-mips.org>
1740
1741 * configure: Regenerate following changes to ../config/tls.m4.
1742
bd69daef
JJ
17432007-09-28 Jakub Jelinek <jakub@redhat.com>
1744
1745 * testsuite/libgomp.fortran/stack.f90: New test.
1746
1d0bd356
DS
17472007-09-10 Danny Smith <dannysmith@users.sourceforge.net>
1748
1749 * config/mingw32/proc.c: New file.
1750
b3172cab
UB
17512007-09-05 Uros Bizjak <ubizjak@gmail.com>
1752
1753 * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
1754 (main): Use __get_cpuid to get i386 target fetaures.
1755 * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
1756 (main): Use __get_cpuid to get x86_64 target fetaures.
1757
6da17392
JH
17582007-08-15 Jack Howarth <howarth@bromo.med.uc.edu>
1759
1760 PR target/32765
1761 * testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
1762 * testsuite/libgomp.fortran/crayptr2.f90: Likwise.
1763
e1c82219
JJ
17642007-07-12 Jakub Jelinek <jakub@redhat.com>
1765
1766 PR fortran/32550
1767 * testsuite/libgomp.fortran/pr32550.f90: New test.
1768 * testsuite/libgomp.fortran/crayptr2.f90: New test.
1769
12a27363
L
17702007-07-05 H.J. Lu <hongjiu.lu@intel.com>
1771
1772 * aclocal.m4: Regenerated.
1773
5349080d
TB
17742007-07-05 Tobias Burnus <burnus@net-b.de>
1775
1776 PR fortran/32359
1777 * testsuite/libgomp.fortran/pr32359.f90: New.
1778
4f9c450c
JJ
17792007-07-02 Jakub Jelinek <jakub@redhat.com>
1780
1781 PR libgomp/32468
1782 * sections.c (GOMP_parallel_sections_start): Only decrease
1783 number of threads to COUNT if dyn_var is true.
1784 * testsuite/libgomp.c/pr32468.c: New test.
1785
28c67ed7
RO
17862007-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1787
1788 PR libgomp/26308
1789 * config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
1790
64964499
JJ
17912007-06-21 Jakub Jelinek <jakub@redhat.com>
1792
1793 PR middle-end/32362
1794 * testsuite/libgomp.c/pr32362-1.c: New test.
1795 * testsuite/libgomp.c/pr32362-2.c: New test.
1796 * testsuite/libgomp.c/pr32362-3.c: New test.
1797
46d8fbd1
JJ
17982007-06-07 Jakub Jelinek <jakub@redhat.com>
1799
1800 * team.c (gomp_team_start): Fix setting up thread_attr
1801 stack size.
1802
82a6cadf
PB
18032007-06-02 Paolo Bonzini <bonzini@gnu.org>
1804
1805 * configure: Regenerate.
1806
1cf3d07d
SE
18072007-05-23 Steve Ellcey <sje@cup.hp.com>
1808
1809 * Makefile.in: Regenerate.
1810 * configure: Regenerate.
1811 * aclocal.m4: Regenerate.
1812 * testsuite/Makefile.in: Regenerate.
1813
12aac30b
JJ
18142007-05-04 Jakub Jelinek <jakub@redhat.com>
1815
1816 * config/linux/proc.c: New file.
1817
f1028b02
JJ
1818 PR libgomp/28482
1819 * configure.tgt: Don't link with -Wl,-z,nodlopen even on Linux.
1820
06785a48
DF
18212007-04-19 Daniel Franke <franke.daniel@gmail.com>
1822
1823 * libgomp.texi (GOMP_CPU_AFFINITY): Updated.
1824
b3b08ba0
MK
18252007-04-16 Matthias Klose <doko@debian.org>
1826
1827 * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
1828 flags if not building with -m64.
1829 * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
1830 flag for i?86-*-* targets, if current target matches -m64.
1831
6b2c5ce0
SE
18322007-04-14 Steve Ellcey <sje@cup.hp.com>
1833
1834 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.
1835 * Makefile.in: Regenerate.
1836
dd56fe7c
JDA
18372007-04-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1838
1839 PR testsuite/31369
1840 * testsuite/libgomp.c++/c++.exp: Don't use concat when setting
1841 ld_library_path.
1842 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1843
a0884cf0
JJ
18442007-04-04 Jakub Jelinek <jakub@redhat.com>
1845
1846 * libgomp.h (gomp_cpu_affinity, gomp_cpu_affinity_len): New extern
1847 decls.
1848 (gomp_init_affinity, gomp_init_thread_affinity): New prototypes.
1849 * env.c (gomp_cpu_affinity, gomp_cpu_affinity_len): New variables.
1850 (parse_affinity): New function.
1851 (initialize_env): Call it and gomp_init_affinity.
1852 * team.c (gomp_team_start): If gomp_cpu_affinity != NULL,
1853 create new pthread_attr_t and call gomp_init_thread_affinity
1854 on it for each thread before passing the attribute to pthread_create.
1855 * config/linux/affinity.c: New file.
1856 * config/posix/affinity.c: New file.
1857 * configure.ac (HAVE_PTHREAD_AFFINITY_NP): New test.
1858 * configure: Rebuilt.
1859 * config.h.in: Rebuilt.
1860 * Makefile.am (libgomp_la_SOURCES): Add affinity.c.
1861 * Makefile.in: Rebuilt.
1862
1850744b
AT
18632007-03-23 Andreas Tobler <a.tobler@schweiz.org>
1864
1865 * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
1866 *-*-darwin*.
1867 * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
1868 and use it if found.
1869
516f1ed8
UB
18702007-03-18 Uros Bizjak <ubizjak@gmail.com>
1871
1872 * testsuite/config/default.exp: New file.
1873 * testsuite/lib/libgomp.exp: New file.
1874 * testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
1875 libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
1876 load_lib *, load_gcc_lib *): Move to libgomp.exp.
1877 (libgomp_load): Remove.
1878 * testsuite/lib/libgomp.exp (libgomp_init): Compute
1879 always_ld_library_path, not ld_library_path. Set additional_flags
1880 to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
1881 (target_compile): Do not call libgomp_init. Append lang_library_path
1882 and lang_link_flags to options.
1883 * testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2. Set
1884 ld_library_path from always_ld_library_path. Set LD_LIBRARY_PATH
1885 here.
1886 * testsuite/libgomp.c++/c++.exp: Set ld_library_path from
1887 always_ld_library_path. Set LD_LIBRARY_PATH here.
1888 * testsuite/libgomp.fortran/fortran.exp: Ditto.
1889 * testsuite/libgomp.c/atomic-1.c: Set dg-options to
1890 "-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
1891 CX8 flag.
1892 * testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
1893 lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
1894 * testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
1895 * testsuite/libgomp.c/pr29947-1.c: Ditto.
1896 * testsuite/libgomp.c/atomic-10.c: Ditto.
1897
2ada56f5
JJ
18982007-03-21 Jakub Jelinek <jakub@redhat.com>
1899
1900 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
1901 dg-final cleanup-modules line.
1902 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
1903 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
1904 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
1905 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
1906 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
1907 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
1908 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
1909
f210f1cd
AS
19102007-03-18 Andreas Schwab <schwab@suse.de>
1911
1912 * acinclude.m4: Adjust regular expression for ld version
1913 extraction.
1914 * configure: Regenerate.
1915
c4dc950d
BM
19162007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
1917
1918 * Makefile.am: Add install-pdf target as copied from
1919 automake v1.10 rules.
1920 * Makefile.in: Regenerate
1921
e02a048f
JJ
19222007-02-07 Jakub Jelinek <jakub@redhat.com>
1923
78e075d4
JJ
1924 PR libgomp/28486
1925 * configure: Regenerate.
1926
e02a048f
JJ
1927 PR c++/30703
1928 * testsuite/libgomp.c++/pr30703.C: New test.
1929
60def7ed
JJ
19302007-02-02 Jakub Jelinek <jakub@redhat.com>
1931
1932 Revert:
1933 2006-07-05 Eric Christopher <echristo@apple.com>
1934 * configure.ac: Depend addition of -pthread on host OS.
1935 * configure: Regenerate.
1936
f1b0882e
RW
19372007-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1938
1939 * libgomp.texi: Fix spacing after abbreviations.
1940
748b9d7c
DF
19412007-01-31 Daniel Franke <franke.daniel@gmail.com>
1942
1943 PR libgomp/30546
1944 * configure.ac: Add check for makeinfo
1945 * Makefile.am: Redefined target libgomp.info, build libgomp.info only
1946 if an appropiate version of makeinfo is found.
1947 * aclocal.m4: Regenerated.
1948 * configure: Regenerated.
1949 * Makefile.in: Regenerated.
1950 * testsuite/Makefile.in: Regenerated.
1951
14734fc7
DF
19522007-01-29 Daniel Franke <franke.daniel@gmail.com>
1953
1954 PR libgomp/30540
1955 * libgomp.texi: More about implementation-dependent settings.
1956
7befd5d2
TB
19572007-01-26 Tobias Burnus <burnus@net-b.de>
1958
1959 * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
1960
4288fea2
JJ
19612007-01-24 Jakub Jelinek <jakub@redhat.com>
1962
1963 PR middle-end/30494
1964 * testsuite/libgomp.c/pr30494.c: New test.
1965
627ab4b8
TT
19662007-01-15 Tom Tromey <tromey@redhat.com>
1967
1968 * configure: Rebuilt.
1969 * configure.ac: Fixed comment.
1970
7c2b7f45
DF
19712007-01-14 Daniel Franke <franke.daniel@gmail.com>
1972
1973 * libgomp.texi: Document implementation specific default values of
1974 environment variables.
1975
3721b9e1
DF
19762006-12-21 Daniel Franke <franke.daniel@gmail.com>
1977
1978 PR libgomp/28209
1979 * libgomp.texi: New file.
1980 * configure.ac: Add --enable-generated-files-in-srcdir option.
1981 * Makefile.am: Add info, dvi, pdf, html targets. On request, copy
1982 files to srcdir.
1983 * Makefile.in: Regenerated.
1984 * config.h.in: Regenerated.
1985 * testsuite/Makefile.in: Regenerated.
1986 * NOTES: Removed.
1987
62bd6216
DF
19882006-12-04 Daniel Franke <franke.daniel@gmail.com>
1989
1990 PR libgomp/29949
1991 * env.c (omp_set_num_threads): Set illegal thread count to 1.
1992
aad741f4
EB
19932006-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
1994
1995 * configure: Regenerate.
1996
22568cc6
JJ
19972006-12-04 Jakub Jelinek <jakub@redhat.com>
1998
1999 PR libgomp/29947
2000 * loop.c (gomp_loop_init): Make parameters signed. Set ws->end to
2001 start if there shouldn't be any loop iterations.
2002 (gomp_loop_ordered_static_start): Remove start == end test.
2003 * testsuite/libgomp.c/pr29947-1.c: New test.
2004 * testsuite/libgomp.c/pr29947-2.c: New test.
2005
a9690009
EB
20062006-12-02 Eric Botcazou <ebotcazou@libertysurf.fr>
2007
2008 * configure.tgt: Force initial-exec TLS model on Linux only.
2009
597c25e6
DJ
20102006-11-13 Daniel Jacobowitz <dan@codesourcery.com>
2011
2012 * configure: Regenerated.
2013
6acf0b38
UB
20142006-11-09 Uros Bizjak <ubizjak@gmail.com>
2015
2016 * env.c (parse_schedule): Reject out of range values.
2017 (parse_unsigned_long): Reject out of range, negative or zero values.
2018
a7a53ca5
JJ
20192006-10-29 Jakub Jelinek <jakub@redhat.com>
2020
2021 PR fortran/29629
2022 * testsuite/libgomp.fortran/pr29629.f90: New test.
2023
6d4d216a
EB
20242006-10-24 Eric Botcazou <ebotcazou@libertysurf.fr>
2025
2026 PR libgomp/29494
2027 * configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
2028 * config/posix95: New directory.
2029 * config/posix95/omp-lock.h: New file.
2030 * config/posix95/lock.c: Likewise.
2031
5b043f08
GK
20322006-10-14 Geoffrey Keating <geoffk@apple.com>
2033
2034 * aclocal.m4: Regenerate.
2035 * configure: Regenerate.
2036
b50019f0
DS
20372006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
2038
2039 * testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
2040 '<' to '<='.
2041
8887708e
DS
20422006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
2043
2044 * acinclude.m4 (HAVE_ATTRIBUTE_ALIAS): Remove __USER_LABEL_PREFIX__ from
2045 test.
2046 * configure: Regenerate.
2047 * fortran.c (ialias_redirect): Add __USER_LABEL_PREFIX__ to alias.
2048
9b9e4cd6
JJ
20492006-09-26 Jakub Jelinek <jakub@redhat.com>
2050
a70ad3bb
JJ
2051 PR middle-end/25261
2052 PR middle-end/28790
2053 * testsuite/libgomp.c/nestedfn-4.c: New test.
2054 * testsuite/libgomp.c/nestedfn-5.c: New test.
2055 * testsuite/libgomp.fortran/nestedfn3.f90: New test.
2056
9b9e4cd6
JJ
2057 PR fortran/29097
2058 * testsuite/libgomp.fortran/condinc1.f: New test.
2059 * testsuite/libgomp.fortran/condinc2.f: New test.
2060 * testsuite/libgomp.fortran/condinc3.f90: New test.
2061 * testsuite/libgomp.fortran/condinc4.f90: New test.
2062 * testsuite/libgomp.fortran/condinc1.inc: New file.
2063
2fb31455
TT
20642006-09-18 Tom Tromey <tromey@redhat.com>
2065
2066 * configure: Rebuilt.
2067
c663e301
JM
20682006-09-13 Joseph S. Myers <joseph@codesourcery.com>
2069
2070 PR c/28768
2071 PR preprocessor/14634
2072 * configure.ac (HAVE_CLOCK_GETTIME): Add missing second argument
2073 to AC_DEFINE.
2074 * configure: Regenerate.
2075
38371be9
SK
20762006-09-08 Steven G. Kargl <kargl@gcc.gnu.org>
2077
2078 * testsuite/libgomp.fortran/reduction3.f90: Change
2079 -2147483648 to -huge(i)-1 to avoid overflow.
2080 * testsuite/libgomp.fortran/reduction4.f90: Change
2081 Z'ffffffff' to not(0) to avoid overflow.
2082
571d5ac5
JM
20832006-08-26 Joseph S. Myers <joseph@codesourcery.com>
2084
2085 PR libgomp/25938
2086 * Makefile.am (libsubincludedir): New.
2087 (nodist_include_HEADERS): Rename to nodist_libsubinclude_HEADERS.
2088 * Makefile.in: Regenerate.
2089
89b3e3cd
JJ
20902006-08-17 Jakub Jelinek <jakub@redhat.com>
2091
2092 PR libgomp/28725
2093 * env.c: Include ctype.h.
2094 (parse_schedule, parse_unsigned_long, parse_boolean): Allow
2095 leading and/or trailing whitespace and compare strings case
2096 insensitively.
2097
742fae05
JJ
20982006-07-16 Jakub Jelinek <jakub@redhat.com>
2099
2100 PR fortran/28390
2101 * testsuite/libgomp.fortran/pr28390.f: New test.
2102
a1daed2d
EC
21032006-07-05 Eric Christopher <echristo@apple.com>
2104
2105 * configure.ac: Depend addition of -pthread on host OS.
2106 * configure: Regenerate.
2107
5d7b5199
JJ
21082006-06-21 Jakub Jelinek <jakub@redhat.com>
2109
2110 * critical.c (GOMP_critical_name_start): Fix *pptr initialization
2111 when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
2112 defined.
2113
fe5568e9
JJ
21142006-06-20 Jakub Jelinek <jakub@redhat.com>
2115
2116 PR libgomp/26175
2117 PR libgomp/26477
2118 * configure.ac: If neither --enable-linux-futex nor
2119 --disable-linux-futex is passed, determine the default by checking
2120 for compiling and/or running against NPTL. With --enable-linux-futex,
2121 check if SYS_gettid and SYS_futex are defined.
2122 * configure: Rebuilt.
2123
c3b11a40
RH
21242006-06-14 Richard Henderson <rth@redhat.com>
2125
2126 PR libgomp/28008
2127 * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
2128 undefined. Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
2129
d0d1b24d
RH
21302006-06-09 Richard Henderson <rth@redhat.com>
2131
2132 * env.c (gomp_nthreads_var): Change to unsigned long.
2133 (gomp_run_sched_chunk): Likewise.
2134 (parse_unsigned_long): Rename from parse_num_threads and generalize.
2135 (initialize_env): Initialize gomp_thread_attr.
2136 * libgomp.h (gomp_nthreads_var): Update decl.
2137 (gomp_run_sched_chunk): Likewise.
2138 (gomp_thread_attr): Declare.
2139 * team.c (gomp_thread_attr): Export.
2140 (initialize_team): Don't initialize it.
2141
cd75853e
JJ
21422006-06-09 Jakub Jelinek <jakub@redhat.com>
2143
2144 PR fortran/27916
2145 * testsuite/libgomp.fortran/pr27916-1.f90: New test.
2146 * testsuite/libgomp.fortran/pr27916-2.f90: New test.
2147
33815e0c
FXC
21482006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2149
2150 * config/mingw32/time.c: New file.
2151 * configure.tgt: Use it.
2152
6667de0d
CD
21532006-05-23 Carlos O'Donell <carlos@codesourcery.com>
2154
2155 * Makefile.am: Add install-html target. Add install-html to .PHONY
2156 * Makefile.in: Regenerate.
2157
e962c46b
JDA
21582006-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2159
2160 PR libgomp/27612
2161 * testsuite/libgomp.c/sections-1.c: Require sync_int_long.
2162 * testsuite/libgomp.c/critical-1.c: Likewise.
2163 * testsuite/libgomp.c/loop-1.c: Likewise.
2164 * testsuite/libgomp.c/loop-2.c: Likewise.
2165 * testsuite/libgomp.c/single-1.c: Likewise.
2166 * testsuite/libgomp.c/ordered-1.c: Likewise.
2167 * testsuite/libgomp.c/ordered-2.c: Likewise.
2168
eeb1d9e0
JJ
21692006-05-15 Jakub Jelinek <jakub@redhat.com>
2170
2171 PR middle-end/27416
2172 * libgomp.fortran/pr27416-1.f90: New test.
2173
693d710f
JJ
21742006-05-03 Jakub Jelinek <jakub@redhat.com>
2175
2176 PR fortran/27395
2177 * testsuite/libgomp.fortran/pr27395-1.f90: New test.
2178 * testsuite/libgomp.fortran/pr27395-2.f90: New test.
2179
8ca5b2a2
JJ
21802006-05-02 Jakub Jelinek <jakub@redhat.com>
2181
2182 PR c++/26943
2183 * testsuite/libgomp.c/pr26943-1.c: New test.
2184 * testsuite/libgomp.c/pr26943-2.c: New test.
2185 * testsuite/libgomp.c/pr26943-3.c: New test.
2186 * testsuite/libgomp.c/pr26943-4.c: New test.
2187 * testsuite/libgomp.c++/pr27337.C: Remove barrier.
2188 * testsuite/libgomp.c++/pr26943.C: New test.
2189
077b0dfb
JJ
21902006-05-02 Jakub Jelinek <jakub@redhat.com>
2191
2192 PR middle-end/27337
2193 * testsuite/libgomp.c++/pr27337.C: New test.
2194
91b6c26d
JJ
21952006-04-26 Jakub Jelinek <jakub@redhat.com>
2196
2197 PR c/26171
2198 * testsuite/libgomp.c/pr26171.c: New test.
2199
60e1758f
RH
22002006-04-25 Richard Henderson <rth@redhat.com>
2201
2202 PR libgomp/25865
2203 * configure.ac: Use GCC_CHECK_TLS.
2204 * acinclude.m4 (LIBGOMP_CHECK_TLS): Remove.
2205 * Makefile.in, aclocal.m4, configure: Regenerate.
2206
615baed7
MK
22072006-04-10 Matthias Klose <doko@debian.org>
2208
2209 * testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
2210 directory names containing underscores.
2211
fae2b46b
JJ
22122006-03-21 Jakub Jelinek <jakub@redhat.com>
2213
2214 PR c++/26691
2215 * testsuite/libgomp.c++/pr26691.C: New test.
2216
11a5f608
JJ
22172006-03-13 Jakub Jelinek <jakub@redhat.com>
2218
2219 * testsuite/libgomp.fortran/retval2.f90: New test.
2220
1799e5d5
RH
22212006-03-09 Diego Novillo <dnovillo@redhat.com>
2222
2223 * testsuite/libgomp.c++: New directory.
2224
d349482e
AT
22252006-02-25 Shantonu Sen <ssen@opendarwin.org>
2226
2227 * config/posix/sem.h: Define BROKEN_POSIX_SEMAPHORES functions.
2228 * config/posix/sem.c: Implement the above.
2229
22302006-02-25 Andreas Tobler <a.tobler@schweiz.ch>
2231
2232 * configure.ac (HAVE_BROKEN_POSIX_SEMAPHORES): Check for darwin and
2233 define HAVE_BROKEN_POSIX_SEMAPHORES.
2234 * configure: Rebuilt.
2235 * config.h.in: Rebuilt.
2236
124452c9
FXC
22372006-02-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2238
2239 PR bootstrap/26161
2240 * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment
2241 for the other pthread check.
2242 * configure: Regenerate.
2243 * config.h.in: Regenerate.
2244
dd8d6dfe
JJ
22452006-02-15 Jakub Jelinek <jakub@redhat.com>
2246
2247 PR libgomp/25938
2248 PR libgomp/25984
2249 * Makefile.am (fincludedir): New variable.
2250 (nodist_include_HEADERS): Remove Fortran files.
2251 (nodist_finclude_HEADERS): New variable.
2252 * Makefile.in: Regenerated.
2253
6c7a4dfd
JJ
22542006-02-13 Jakub Jelinek <jakub@redhat.com>
2255
2256 * testsuite/libgomp.fortran/vla7.f90: Add -w to options.
2257 Remove tests for returning assumed character length arrays.
2258
5142e08b
RS
22592006-02-12 Roger Sayle <roger@eyesopen.com>
2260 John David Anglin <dave@hiauly1.hia.nrc.ca>
2261
2262 PR libgomp/25936
2263 * configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.
a1daed2d 2264
5821fba8
UW
22652006-02-08 Ulrich Weigand <uweigand@de.ibm.com>
2266
2267 * testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
2268
cb2bbc67
EB
22692006-02-07 Eric Botcazou <ebotcazou@libertysurf.fr>
2270
2271 * testsuite/lib/libgomp-dg.exp (libgomp_init): Compute multilib related
2272 part of LD_LIBRARY_PATH manually.
2273
f05ee80c
L
22742006-02-03 H.J. Lu <hongjiu.lu@intel.com>
2275
2276 PR libgomp/25852
2277 * testsuite/lib/libgomp-dg.exp (blddir): Set it in
2278 libgomp_init.
2279
03b8fe49
PB
22802005-01-25 Paolo Bonzini <bonzini@gnu.org>
2281
2282 PR libgomp/25884
f05ee80c
L
2283 * Makefile.am (omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Remove.
2284 * configure.ac (PERL): Don't set.
2285 (gstdint.h, omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Create here.
2286 (OMP_LOCK_SIZE, OMP_LOCK_ALIGN, OMP_LOCK_KIND, OMP_NEST_LOCK_SIZE,
2287 OMP_NEST_LOCK_ALIGN, OMP_NEST_LOCK_KIND): New substitutions.
2288 * omp.h.in: Wrap the new configure substitutions with @ characters.
2289 * omp_lib.h.in, omp_lib.f90.in, libgomp_f.h.in: Likewise.
2290 * aclocal.m4, configure, Makefile.in: Regenerate.
2291 * mkomp_h.pl: Delete.
03b8fe49 2292
18cbfd85
PB
22932005-01-24 Paolo Bonzini <bonzini@gnu.org>
2294
2295 PR libgomp/25259
2296 * configure.ac: Use GCC_HEADER_STDINT.
2297 * libgomp.h: Include gstdint.h.
2298 * libgomp_f.h.in: Don't include stdint.h or inttypes.h.
2299 * configure, Makefile.in, testsuite/Makefile.in, aclocal.m4: Rebuild.
2300
c41303c6
RH
23012006-01-24 Richard Henderson <rth@redhat.com>
2302
2303 PR libgomp/25942
2304 * configure.ac: Add AM_MAINTAINER_MODE.
2305 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in: Rebuild.
2306
149b9553
DN
23072006-01-24 Diego Novillo <dnovillo@redhat.com>
2308
2309 * Makefile.in: Regenerate.
2310 * testsuite/Makefile.in: Regenerate.
2311 * aclocal.m4: Regenerate.
2312
192a50ad
AT
23132006-01-23 Andreas Tobler <a.tobler@schweiz.ch>
2314
2315 * config/posix/proc.c: Conditional include of sys/loadavg.h for
2316 Solaris.
2317 * configure.ac: Add check for loadavg.h.
2318 (link_gomp): Adjust comment.
2319 * configure: Regenerate.
2320 * config.h.in: Regenerate.
2321
a55b8e18
SE
23222006-01-21 Steve Ellcey <sje@cup.hp.com>
2323
2324 PR libgomp/25877
2325 * configure.ac: Remove check for alloca.h.
2326 * configure: Regenerate.
2327 * config.h.in: Regenerate.
2328 * libgomp.h: define gomp_alloca to be __builtin_alloca.
2329 * team.c: Remove use of alloca.h.
2330 Call gomp_alloca instead of alloca.
2331
692eeb34
SE
23322006-01-20 Steve Ellcey <sje@cup.hp.com>
2333
2334 PR libgomp/25877
2335 * team.c: Add include of alloca.h.
2336 * configure.ac: Add check for alloca.h.
2337 * configure: Regenerate.
2338 * config.h.in: Regenerate.
2339
953ff289
DN
23402006-01-17 Jakub Jelinek <jakub@redhat.com>
2341
2342 PR fortran/25219
2343 * testsuite/libgomp.fortran/pr25219.f90: New test.
2344
23452005-12-05 Uros Bizjak <uros@kss-loka.si>
2346
2347 * testsuite/libgomp.c/pr24455.c, testsuite/libgomp.c/copyin-1.c,
2348 testsuite/libgomp.c/copyin-2.c, testsuite/libgomp.c/copyin-3.c,
2349 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
2350 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
2351 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455.C,
2352 testsuite/libgomp.fortran/threadprivate1.f90,
2353 testsuite/libgomp.fortran/threadprivate2.f90,
2354 testsuite/libgomp.fortran/threadprivate3.f90,
2355 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
2356 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
2357 testsuite/libgomp.fortran/omp_parse3.f90: Change required
2358 effective-target to TLS runtime.
2359
2360 * testsuite/libgomp.fortran/pr25162.f: Require
2361 effective-target TLS runtime.
2362
23632005-12-01 Jakub Jelinek <jakub@redhat.com>
2364
2365 * testsuite/libgomp.fortran/nestedfn2.f90: New test.
2366 * testsuite/libgomp.c/nestedfn-3.c: New test.
2367
23682005-11-30 Jakub Jelinek <jakub@redhat.com>
2369
2370 PR fortran/25162
2371 * testsuite/libgomp.fortran/pr25162.f: New test.
2372
23732005-11-28 Jakub Jelinek <jakub@redhat.com>
2374
2375 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Fall back to
2376 CLOCK_REALTIME if clock_* (CLOCK_MONOTONIC, &ts) call failed.
2377
23782005-11-25 Jakub Jelinek <jakub@redhat.com>
2379
2380 * alloc.c, barrier.c, critical.c, env.c, error.c, fortran.c, iter.c,
2381 libgomp.h, libgomp_f.h.in, libgomp_g.h, loop.c, mkomp_h.pl, omp.h.in,
2382 omp_lib.f90.in, omp_lib.h.in, ordered.c, parallel.c, sections.c,
2383 single.c, team.c, work.c, config/linux/alpha/futex.h,
2384 config/linux/bar.c, config/linux/bar.h, config/linux/ia64/futex.h,
2385 config/linux/lock.c, config/linux/mutex.c, config/linux/mutex.h,
2386 config/linux/powerpc/futex.h, config/linux/s390/futex.h,
2387 config/linux/sem.c, config/linux/sem.h, config/linux/sparc/futex.h,
2388 config/linux/x86/futex.h, config/posix/bar.c, config/posix/bar.h,
2389 config/posix/lock.c, config/posix/mutex.h, config/posix/proc.c,
2390 config/posix/sem.c, config/posix/sem.h, config/posix/time.c: Update
2391 FSF address.
2392
23932005-11-18 Jakub Jelinek <jakub@redhat.com>
2394
2395 * Makefile.am: Move libgomp_f.h from nodist_include_HEADERS
2396 to nodist_noinst_HEADERS.
2397 * Makefile.in: Rebuilt.
2398
2399 * config/posix/omp-lock.h (omp_nest_lock_t): Change into struct,
2400 add integer count field.
2401 * config/posix/lock.c (omp_destroy_nest_lock): Adjust for
2402 omp_nest_lock_t type change.
2403 (omp_init_nest_lock): Likewise. Initialize count to 0.
2404 (omp_set_nest_lock): Adjust for omp_nest_lock_t type change.
2405 Increment count.
2406 (omp_unset_nest_lock): Adjust for omp_nest_lock_t type change.
2407 Decrement count.
2408 (omp_test_nest_lock): Adjust for omp_nest_lock_t type change.
2409 Increment count if successful and return the new nesting level.
2410 * config/linux/lock.c (omp_test_nest_lock): Return new nesting level.
2411 * omp_lib.f90.in (omp_test_lock): Fix LOCK argument type.
2412 * testsuite/libgomp.c/lib-1.c: New test.
2413 * testsuite/libgomp.fortran/lib1.f90: New test.
2414 * testsuite/libgomp.fortran/lib2.f: New test.
2415 * testsuite/libgomp.fortran/lib3.f: New test.
2416
24172005-11-17 Richard Henderson <rth@redhat.com>
2418
2419 PR 24845
2420 * Makefile.am (nodist_toolexeclib_HEADERS): New.
2421 * configure.ac (link_gomp): New. Substitute it.
2422 (AC_CONFIG_FILES): Add libgomp.spec.
2423 * libgomp.spec.in: New file.
2424 * Makefile.in, testsuite/Makefile.in, configure: Rebuild.
2425 * testsuite/lib/libgomp-dg.exp: Add -B${blddir}/ to flags.
2426
24272005-11-18 Jakub Jelinek <jakub@redhat.com>
2428
2429 * testsuite/libgomp.fortran/reduction1.f90: Adjust for
2430 reduction(-:var) behaving the same as reduction(+:var).
2431 * testsuite/libgomp.c/reduction-4.c: New test.
2432
24332005-11-15 Uros Bizjak <uros@kss-loka.si>
2434
2435 * testsuite/libgomp.c/pr24455-1.c, testsuite/libgomp.c/pr24455.c,
2436 testsuite/libgomp.c/copyin-1.c, testsuite/libgomp.c/copyin-2.c,
2437 testsuite/libgomp.c/copyin-3.c,
2438 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
2439 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
2440 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455-1.C,
2441 testsuite/libgomp.c++/pr24455.C,
2442 testsuite/libgomp.fortran/threadprivate1.f90,
2443 testsuite/libgomp.fortran/threadprivate2.f90,
2444 testsuite/libgomp.fortran/threadprivate3.f90,
2445 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
2446 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
2447 testsuite/libgomp.fortran/omp_parse3.f90: Require
2448 effective-target TLS.
2449
24502005-11-14 Diego Novillo <dnovillo@redhat.com>
2451
2452 * HEADER: Remove.
2453
24542005-11-13 Jakub Jelinek <jakub@redhat.com>
2455
2456 PR libgomp/24797
2457 * team.c (initialize_team): Pass NULL rather than free as
2458 pthread_key_create destructor. Initialize thread specific data
2459 pointer in initial thread to a static local variable rather than
2460 malloced memory.
2461
24622005-11-11 Uros Bizjak <uros@kss-loka.si>
2463
2464 * testsuite/lib/libgomp-dg.exp: Locate libgcc.a and append
2465 its location to ld_library_path.
2466
24672005-11-10 Diego Novillo <dnovillo@redhat.com>
2468
2469 * testsuite/libgomp.c/c.exp: Rename from dg.exp.
2470
24712005-11-10 Diego Novillo <dnovillo@redhat.com>
2472
2473 * testsuite/libgomp.c: Rename from libgomp.dg.
2474
24752005-11-09 Diego Novillo <dnovillo@redhat.com>
2476
2477 * testsuite/libgomp.c++/pr24455.C: Add copyin clause for
2478 threadprivate variable 'i'.
2479
24802005-11-09 Jakub Jelinek <jakub@redhat.com>
2481
2482 * config/linux/s390/futex.h: New file.
2483 * configure.tgt: Use it.
2484
2485 * testsuite/libgomp.fortran/omp_parse4.f90: Move n initialization
2486 before the parallel.
2487
24882005-11-08 Jakub Jelinek <jakub@redhat.com>
2489
2490 PR c++/24734
2491 * testsuite/libgomp.c++/master-1.C: New test.
2492
24932005-11-07 Jakub Jelinek <jakub@redhat.com>
2494
2495 * testsuite/libgomp.dg/copyin-3.c: New test.
2496
24972005-11-07 Jakub Jelinek <jakub@redhat.com>
2498
2499 * testsuite/libgomp.fortran/retval1.f90: New test.
2500 * testsuite/libgomp.fortran/vla7.f90: New test.
2501
25022005-11-06 Jakub Jelinek <jakub@redhat.com>
2503
2504 * testsuite/libgomp.fortran/vla2.f90: New test.
2505 * testsuite/libgomp.fortran/vla3.f90: New test.
2506 * testsuite/libgomp.fortran/vla4.f90: New test.
2507 * testsuite/libgomp.fortran/vla5.f90: New test.
2508 * testsuite/libgomp.fortran/vla6.f90: New test.
2509
25102005-11-01 Jakub Jelinek <jakub@redhat.com>
2511
2512 * config/linux/sparc/futex.h: New file.
2513 * configure.tgt: Use it.
2514 * testsuite/lib/libgomp-dg.exp: Use -mcpu=v9 for sparc testing.
2515
2516 * critical.c: Include stdlib.h.
2517 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Avoid warnings about
2518 ignoring return value.
2519 * configure.ac: Don't put -Wc,-pthread into XCFLAGS until after
2520 LIBGOMP_CHECK_SYNC_BUILTINS check.
2521 * configure: Rebuilt.
2522
25232005-10-31 Jakub Jelinek <jakub@redhat.com>
2524
2525 * testsuite/libgomp.fortran/vla1.f90: New test.
2526
25272005-10-31 Richard Henderson <rth@redhat.com>
2528
2529 * testsuite/libgomp.fortran/character2.f90: Fix race condition
2530 setting 's' in different threads.
2531
25322005-10-31 Jakub Jelinek <jakub@redhat.com>
2533
2534 * libgomp.h (attribute_hidden, ialias): Define.
2535 * config/posix/proc.c (omp_get_num_procs): Add ialias.
2536 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Likewise.
2537 * config/posix/lock.c (omp_init_lock, omp_init_nest_lock,
2538 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
2539 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
2540 omp_test_lock, omp_test_nest_lock): Likewise.
2541 * config/linux/lock.c (omp_init_lock, omp_init_nest_lock,
2542 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
2543 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
2544 omp_test_lock, omp_test_nest_lock): Likewise.
2545 * env.c (omp_set_dynamic, omp_set_nested, omp_set_num_threads,
2546 omp_get_dynamic, omp_get_nested): Likewise.
2547 * parallel.c (omp_get_num_threads, omp_get_max_threads,
2548 omp_get_thread_num, omp_in_parallel): Likewise.
2549 * fortran.c (ialias_redirect): Define.
2550 (omp_init_lock, omp_init_nest_lock, omp_destroy_lock,
2551 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock,
2552 omp_unset_lock, omp_unset_nest_lock, omp_test_lock,
2553 omp_test_nest_lock, omp_set_dynamic, omp_set_nested,
2554 omp_set_num_threads, omp_get_dynamic, omp_get_nested,
2555 omp_in_parallel, omp_get_max_threads, omp_get_num_procs,
2556 omp_get_num_threads, omp_get_thread_num, omp_get_wtick,
2557 omp_get_wtime): Add ialias_redirect.
2558
25592005-10-30 Jakub Jelinek <jakub@redhat.com>
2560
2561 * fortran.c: Include stdlib.h.
2562
25632005-10-29 Jakub Jelinek <jakub@redhat.com>
2564
2565 * Makefile.am (env.o, env.lo): Depend on libgomp_f.h.
2566 * Makefile.in: Regenerated.
2567
25682005-10-28 Jakub Jelinek <jakub@redhat.com>
2569
2570 * mkomp_h.pl: Remove all -Wc, option prefixes in $COMPILE.
2571 * libgomp_f.h.in (omp_check_defines): New function.
2572 * env.c: Include libgomp_f.h.
2573 (initialize_env): Call omp_check_defines.
2574
2575 * testsuite/libgomp.dg/copyin-2.c: New test.
2576 * testsuite/libgomp.c++/copyin-2.C: New test.
2577 * testsuite/libgomp.fortran/threadprivate3.f90: New test.
2578
2579 * testsuite/libgomp.fortran/threadprivate2.f90: New test.
2580 * testsuite/libgomp.fortran/sharing2.f90: New test.
2581
2582 * testsuite/libgomp.dg/copyin-1.c: New test.
2583 * testsuite/libgomp.c++/copyin-1.C: New test.
2584
25852005-10-26 Jakub Jelinek <jakub@redhat.com>
2586
2587 * testsuite/libgomp.fortran/crayptr1.f90: New test.
2588
2589 * testsuite/libgomp.fortran/workshare1.f90: New test.
2590
2591 * libgomp.fortran/appendix-a/a.28.5.f90: Change into compile
2592 only test.
2593 * libgomp.fortran/sharing1.f90: New test.
2594
25952005-10-24 Jakub Jelinek <jakub@redhat.com>
2596
2597 PR c++/24502
2598 * testsuite/libgomp.c++/loop-7.C: New test.
2599
2600 * testsuite/libgomp.dg/nestedfn-2.c: New test.
2601
2602 * testsuite/libgomp.dg/nestedfn-1.c: New test.
2603 * testsuite/libgomp.fortran/reduction6.f90: New test.
2604 * testsuite/libgomp.fortran/nestedfn1.f90: New test.
2605
26062005-10-23 Richard Henderson <rth@redhat.com>
2607
2608 * testsuite/libgomp.c++/ctor-1.C: New.
2609 * testsuite/libgomp.c++/ctor-2.C: New.
2610 * testsuite/libgomp.c++/ctor-3.C: New.
2611 * testsuite/libgomp.c++/ctor-4.C: New.
2612 * testsuite/libgomp.c++/ctor-5.C: New.
2613 * testsuite/libgomp.c++/ctor-6.C: New.
2614 * testsuite/libgomp.c++/ctor-7.C: New.
2615 * testsuite/libgomp.c++/ctor-8.C: New.
2616 * testsuite/libgomp.c++/ctor-9.C: New.
2617
26182005-10-21 Diego Novillo <dnovillo@redhat.com>
2619
2620 PR 24455
2621 * testsuite/libgomp.c++/pr24455-1.C: New test.
2622 * testsuite/libgomp.c++/pr24455.C: New test.
2623 * testsuite/libgomp.dg/pr24455-1.c: New test.
2624 * testsuite/libgomp.dg/pr24455.c: New test.
2625
26262005-10-20 Richard Henderson <rth@redhat.com>
2627
2628 * testsuite/libgomp.c++/loop-6.C: New.
2629 * testsuite/libgomp.dg/loop-3.c: New.
2630
26312005-10-20 Jakub Jelinek <jakub@redhat.com>
2632
2633 * testsuite/libgomp.fortran/jacobi.f: Don't make i and j
2634 explicitly private.
2635 * testsuite/libgomp.fortran/omp_parse1.f90 (test_do): Make i
2636 explicitly shared.
2637
26382005-10-19 Diego Novillo <dnovillo@redhat.com>
2639
2640 * testsuite/libgomp.fortran/jacobi.f: New test.
2641
26422005-10-19 Richard Henderson <rth@redhat.com>
2643
2644 * configure.tgt (i?86-linux): Default to with_arch instead of
2645 CFLAGS. Add -mtune to match target_cpu.
2646 (x86_64-linux): Tune to i686.
2647
2648 * fortran.c (omp_test_nest_lock_): Fix typo.
2649
26502005-10-19 Jakub Jelinek <jakub@redhat.com>
2651
2652 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
2653 gomp_ordered_sync): Do nothing if team->nthreads == 1.
2654 * testsuite/libgomp.dg/ordered-3.c: New test.
2655
2656 * testsuite/libgomp.dg/appendix-a/a.18.1.c: Remove unconditional abort.
2657 Remove volatile keyword.
2658
2659 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Reorder variables
2660 in COMMON block to avoid warnings on 64-bit targets.
2661
26622005-10-18 Diego Novillo <dnovillo@redhat.com>
2663
2664 * testsuite/libgomp.dg/shared-3.c: New test.
2665
26662005-10-18 Jakub Jelinek <jakub@redhat.com>
2667
2668 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: Removed.
2669 * testsuite/libgomp.fortran/reduction5.f90: New test.
2670
26712005-10-18 Jakub Jelinek <jakub@redhat.com>
2672
2673 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Add -ffixed-form to
2674 dg-options.
2675 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise. Enable
2676 flush loop now that __sync_synchronize has proper memory barrier.
2677 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: Fix a typo.
2678 Add -ffixed-form to dg-options.
2679
26802005-10-17 Diego Novillo <dnovillo@redhat.com>
2681
2682 * testsuite/libgomp.fortran/fortran.exp: Also gather tests
2683 from subdirectories.
2684 * testsuite/libgomp.fortran/appendix-a/a.15.1.f90: New test.
2685 * testsuite/libgomp.fortran/appendix-a/a.16.1.f90: New test.
2686 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: New test.
2687 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: New test.
2688 * testsuite/libgomp.fortran/appendix-a/a.2.1.f90: New test.
2689 * testsuite/libgomp.fortran/appendix-a/a.21.1.f90: New test.
2690 * testsuite/libgomp.fortran/appendix-a/a.22.7.f90: New test.
2691 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: New test.
2692 * testsuite/libgomp.fortran/appendix-a/a.26.1.f90: New test.
2693 * testsuite/libgomp.fortran/appendix-a/a.28.1.f90: New test.
2694 * testsuite/libgomp.fortran/appendix-a/a.28.2.f90: New test.
2695 * testsuite/libgomp.fortran/appendix-a/a.28.3.f90: New test.
2696 * testsuite/libgomp.fortran/appendix-a/a.28.4.f90: New test.
2697 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: New test.
2698 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: New test.
2699 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: New test.
2700 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: New test.
2701 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: New test.
2702 * testsuite/libgomp.fortran/appendix-a/a.33.3.f90: New test.
2703 * testsuite/libgomp.fortran/appendix-a/a.38.1.f90: New test.
2704 * testsuite/libgomp.fortran/appendix-a/a.39.1.f90: New test.
2705 * testsuite/libgomp.fortran/appendix-a/a.4.1.f90: New test.
2706 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: New test.
2707 * testsuite/libgomp.fortran/appendix-a/a.5.1.f90: New test.
2708 * testsuite/libgomp.fortran/appendix-a/a10.1.f90: New test.
2709
27102005-10-17 Jakub Jelinek <jakub@redhat.com>
2711
2712 * testsuite/libgomp.dg/dg.exp: Only unset lang_* if
2713 lang_library_path exists. Use find instead of glob to gather tests.
2714 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: Removed.
2715
27162005-10-17 Diego Novillo <dnovillo@redhat.com>
2717
2718 * testsuite/libgomp.dg/appendix-a/a.15.1.c: New test.
2719 * testsuite/libgomp.dg/appendix-a/a.16.1.c: New test.
2720 * testsuite/libgomp.dg/appendix-a/a.18.1.c: New test.
2721 * testsuite/libgomp.dg/appendix-a/a.19.1.c: New test.
2722 * testsuite/libgomp.dg/appendix-a/a.2.1.c: New test.
2723 * testsuite/libgomp.dg/appendix-a/a.21.1.c: New test.
2724 * testsuite/libgomp.dg/appendix-a/a.26.1.c: New test.
2725 * testsuite/libgomp.dg/appendix-a/a.29.1.c: New test.
2726 * testsuite/libgomp.dg/appendix-a/a.3.1.c: New test.
2727 * testsuite/libgomp.dg/appendix-a/a.39.1.c: New test.
2728 * testsuite/libgomp.dg/appendix-a/a.4.1.c: New test.
2729 * testsuite/libgomp.dg/appendix-a/a.5.1.c: New test.
2730 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: New file.
2731
27322005-10-15 Jakub Jelinek <jakub@redhat.com>
2733
2734 * testsuite/libgomp.dg/vla-1.c: New test.
2735
2736 * testsuite/libgomp.fortran/reference2.f90: New test.
2737
2738 * testsuite/libgomp.fortran/character2.f90: Remove explicit
2739 declaration of omp_get_thread_num.
2740 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise. Add
2741 use omp_lib.
2742
2743 * testsuite/libgomp.fortran/reduction1.f90: New test.
2744 * testsuite/libgomp.fortran/reduction2.f90: New test.
2745 * testsuite/libgomp.fortran/reduction3.f90: New test.
2746 * testsuite/libgomp.fortran/reduction4.f90: New test.
2747
27482005-10-13 Richard Henderson <rth@redhat.com>
2749
2750 * Makefile.am (libgomp_la_SOURCES): Add bar.c.
2751 * Makefile.in: Regenerate.
2752 * barrier.c (GOMP_barrier): Use gomp_barrier_wait.
2753 * libgomp.h: Include bar.h.
2754 (struct gomp_barrier): Remove.
2755 (struct gomp_team): Add barrier. Replace master_barrier with
2756 master_release. Replace threads with ordered_release.
2757 (struct gomp_thread): Replace barrier with release.
2758 * ordered.c (gomp_ordered_first): Update for ordered_release change.
2759 (gomp_ordered_last, gomp_ordered_next, gomp_ordered_static_init,
2760 gomp_ordered_static_next, gomp_ordered_sync): Likewise.
2761 * single.c (GOMP_single_copy_start): Use gomp_barrier_wait.
2762 (GOMP_single_copy_end): Likewise.
2763 * team.c (gomp_threads_dock): New.
2764 (gomp_barrier_init, gomp_barrier_destroy): Remove.
2765 (gomp_thread_start): Use gomp_barrier_wait.
2766 (new_team, free_team): Update for gomp_team changes.
2767 (gomp_team_start): Use gomp_barrier_wait and gomp_barrier_reinit.
2768 (gomp_team_end): Use gomp_barrier_wait.
2769 (initialize_team): Update for gomp_thread changes.
2770 * work.c (gomp_work_share_end): Use gomp_barrier_wait_start.
2771 (gomp_work_share_end_nowait): Use atomic ops when available.
2772 * config/linux/bar.c, config/linux/bar.h: New files.
2773 * config/posix/bar.c, config/posix/bar.h: New files.
2774
27752005-10-13 Jakub Jelinek <jakub@redhat.com>
2776
2777 * single.c (GOMP_single_copy_end): Don't segfault if team is NULL.
2778 * testsuite/libgomp.dg/single-2.c: New test.
2779
2780 * testsuite/libgomp.dg/dg.exp (lang_library_path, lang_test_file,
2781 lang_link_flags): Unset, so that they aren't inherited from previously
2782 sourced *.exp.
2783
2784 * testsuite/libgomp.fortran/threadprivate1.f90: New test.
2785
27862005-10-12 Richard Henderson <rth@redhat.com>
2787
2788 * testsuite/lib/libgomp-dg.exp: Set blddir at toplevel.
2789 (libgomp_init): Use lang_test_file, lang_library_path, and
2790 lang_link_flags, set by the subdirectory files. Add -fopenmp here.
2791
2792 * testsuite/libgomp.fortran/fortran.exp (lang_library_path): New.
2793 (lang_test_file, lang_link_flags): New.
2794 (DEFAULT_FFLAGS, ALWAYS_CFLAGS, multilibs, blddir): Remove.
2795
2796 * testsuite/libgomp.c++/c++.exp, testsuite/libgomp.c++/loop-1.C,
2797 testsuite/libgomp.c++/loop-2.C, testsuite/libgomp.c++/loop-3.C,
2798 testsuite/libgomp.c++/loop-4.C, testsuite/libgomp.c++/nested-1.C,
2799 testsuite/libgomp.c++/parallel-1.C,
2800 testsuite/libgomp.c++/reduction-1.C,
2801 testsuite/libgomp.c++/reduction-2.C,
2802 testsuite/libgomp.c++/reduction-3.C,
2803 testsuite/libgomp.c++/sections-1.C, testsuite/libgomp.c++/shared-1.C,
2804 testsuite/libgomp.c++/shared-2.C, testsuite/libgomp.c++/single-1.C,
2805 testsuite/libgomp.c++/single-2.C, testsuite/libgomp.c++/single-3.C:
2806 New files, largely cribbed from the C testsuite.
2807
28082005-10-12 Jakub Jelinek <jakub@redhat.com>
2809
2810 * testsuite/libgomp.fortran/character1.f90: New test.
2811 * testsuite/libgomp.fortran/character2.f90: New test.
2812
2813 * testsuite/libgomp.dg/nested-1.c: New test.
2814 * testsuite/libgomp.dg/nested-2.c: New test.
2815 * testsuite/libgomp.fortran/do1.f90: New test.
2816 * testsuite/libgomp.fortran/do2.f90: New test.
2817
2818 * testsuite/libgomp.fortran/reference1.f90: New test.
2819
28202005-10-11 Jakub Jelinek <jakub@redhat.com>
2821
2822 * testsuite/libgomp.dg/reduction-1.c: New test.
2823 * testsuite/libgomp.dg/reduction-2.c: New test.
2824 * testsuite/libgomp.dg/reduction-3.c: New test.
2825
28262005-10-10 Jakub Jelinek <jakub@redhat.com>
2827
2828 * testsuite/libgomp.dg/atomic-1.c: New test.
2829 * testsuite/libgomp.dg/atomic-2.c: New test.
2830
28312005-10-09 Richard Henderson <rth@redhat.com>
2832
2833 * critical.c (atomic_lock): New.
2834 (initialize_critical): Initialize it.
2835 (GOMP_atomic_start, GOMP_atomic_end): New.
2836 * libgomp.map: Export them.
2837 * libgomp_g.h: Declare them.
2838
2839 * testsuite/libgomp.dg/atomic-10.c: Move from gcc testsuite.
2840
28412005-10-02 Richard Henderson <rth@redhat.com>
2842
2843 * configure.ac: Move save_CFLAGS hack earlier. Append -Wall/-Werror
2844 to XCFLAGS instead of CFLAGS.
2845
28462005-09-30 Richard Henderson <rth@redhat.com>
2847
2848 * configure.ac: Determine whether -pthread or -lpthread is needed.
2849 * Makefile.am (libgomp_la_LDFLAGS): Remove explicit -lpthread.
2850 * Makefine.in, configure: Rebuild.
2851
28522005-09-28 Richard Henderson <rth@redhat.com>
2853
2854 * testsuite/libgomp.dg/omp-loop03.c: Fix return code.
2855 * testsuite/libgomp.dg/omp-single-3.c: New test.
2856
28572005-09-28 Diego Novillo <dnovillo@redhat.com>
2858
2859 * testsuite/libgomp.dg/omp-single-2.c: New test.
2860 * testsuite/libgomp.dg/shared-2.c: Fix return code.
2861
28622005-09-27 Richard Henderson <rth@redhat.com>
2863
2864 * testsuite/libgomp.dg/omp-loop03.c: Add initial barrier.
2865 * testsuite/libgomp.dg/omp-parallel-for.c: Specify static schedule.
2866
28672005-09-27 Jakub Jelinek <jakub@redhat.com>
2868
2869 * testsuite/libgomp.dg/omp-loop03.c: New test.
2870
28712005-09-27 Diego Novillo <dnovillo@redhat.com>
2872
2873 * testsuite/libgomp.dg/omp-parallel-for.c: New test.
2874
28752005-09-27 Diego Novillo <dnovillo@redhat.com>
2876
2877 * testsuite/libgomp.dg/omp-single-1.c: New test.
2878 * testsuite/libgomp.dg/shared-1.c: Return 0.
2879 Add prototype for abort.
2880 * testsuite/libgomp.dg/shared-2.c: Likewise.
2881
28822005-09-26 Jakub Jelinek <jakub@redhat.com>
2883
2884 * testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
2885 constructs.
2886
28872005-09-26 Diego Novillo <dnovillo@redhat.com>
2888
2889 * testsuite/libgomp.dg/shared-1.c: New test.
2890 * testsuite/libgomp.dg/shared-2.c: New test.
2891
28922005-09-24 Richard Henderson <rth@redhat.com>
2893
2894 * testsuite/libgomp.dg/omp_workshare3.c: Mark dg-error.
2895
28962005-09-24 Richard Henderson <rth@redhat.com>
2897
2898 * iter.c (gomp_iter_static_next): Round up when computing number
2899 of iterations. Don't bother distributing a remainder equally.
2900
2901 * testsuite/libgomp.dg/omp-loop01.c (main1): Rename from main.
2902 Don't call srand. Zero b before testing.
2903 (main): New.
2904
29052005-09-24 Jakub Jelinek <jakub@redhat.com>
2906
2907 * testsuite/libgomp.fortran/omp_atomic1.f90: New test.
2908 * testsuite/libgomp.fortran/omp_atomic2.f90: New test.
2909
29102005-09-23 Jakub Jelinek <jakub@redhat.com>
2911
2912 * testsuite/libgomp.fortran/omp_parse1.f90: Add a test for !$omp do
2913 without !$omp end do, followed immediately by subroutine end.
2914
29152005-09-23 Diego Novillo <dnovillo@redhat.com>
2916
2917 * testsuite/libgomp.dg/omp-parallel-if.c: New test.
2918
29192005-09-22 Richard Henderson <rth@redhat.com>
2920
2921 * critical.c (GOMP_critical_name_start): Change argument to void**.
2922 Reuse the pointer space if the mutex fits.
2923 (GOMP_critical_name_end): Likewise.
2924 (initialize_critical): Don't define if GOMP_MUTEX_INIT_0.
2925 * libgomp_g.h (GOMP_critical_name_start): Update decl.
2926 (GOMP_critical_name_end): Likewise.
2927 * config/linux/mutex.h (GOMP_MUTEX_INIT_0): New.
2928 * config/posix/mutex.h (GOMP_MUTEX_INIT_0): New.
2929
29302005-09-20 Richard Henderson <rth@redhat.com>
2931
2932 * critical.c (GOMP_critical_name_start, GOMP_critical_name_end): New.
2933 (create_lock_lock): New.
2934 (initialize_critical): Initialize it.
2935 * libgomp.map (GOMP_critical_name_start, GOMP_critical_name_end): New.
2936 * libgomp_g.h (GOMP_ordered_start, GOMP_ordered_end): Declare.
2937
29382005-09-20 Diego Novillo <dnovillo@redhat.com>
2939
2940 * testsuite/libgom.dg/omp-loop01.c: Include stdio.h.
2941
29422005-09-20 Diego Novillo <dnovillo@redhat.com>
2943
2944 * testsuite/libgomp.dg/omp-loop01.c: New test.
2945 * testsuite/libgomp.dg/omp-loop02.c: New test.
2946
29472005-09-20 Jakub Jelinek <jakub@redhat.com>
2948
2949 * configure.ac (AC_PROG_FC): Add.
2950 (USE_FORTRAN): New automake conditional.
2951 * configure: Rebuilt.
2952 * Makefile.am (libgomp_la_SOURCES): Add fortran.c.
2953 (nodist_include_HEADERS): Add omp_lib.h, omp_lib.f90 and libgomp_f.h.
2954 If USE_FORTRAN, add also omp_lib.mod and omp_lib_kinds.mod.
2955 Add rules to build them.
2956 * Makefile.in: Rebuilt.
2957 * mkomp_h.pl: Compute and replace also OMP_LOCK_KIND and
2958 OMP_NEST_LOCK_KIND.
2959 * libgomp.map: Add Fortran wrappers.
2960 * libgomp_f.h.in: New file.
2961 * omp_lib.h.in: New file.
2962 * omp_lib.f90.in: New file.
2963 * fortran.c: New file.
2964 * testsuite/lib/libgomp-dg.exp: Load a few more .exp files.
2965 Append libgfortran directory to LD_LIBRARY_PATH if it exists.
2966 Add -Lpath_to_libgfortran and -lgfortran -lgfortranbegin if
2967 libgfortran has been built.
2968 * testsuite/libgomp.fortran/fortran.exp: New file.
2969 * testsuite/libgomp.fortran/omp_cond1.f: New test.
2970 * testsuite/libgomp.fortran/omp_cond2.f: New test.
2971 * testsuite/libgomp.fortran/omp_cond3.F90: New test.
2972 * testsuite/libgomp.fortran/omp_cond4.F90: New test.
2973 * testsuite/libgomp.fortran/omp_hello.f: New test.
2974 * testsuite/libgomp.fortran/omp_orphan.f: New test.
2975 * testsuite/libgomp.fortran/omp_parse1.f90: New test.
2976 * testsuite/libgomp.fortran/omp_parse2.f90: New test.
2977 * testsuite/libgomp.fortran/omp_parse3.f90: New test.
2978 * testsuite/libgomp.fortran/omp_parse4.f90: New test.
2979 * testsuite/libgomp.fortran/omp_reduction.f: New test.
2980 * testsuite/libgomp.fortran/omp_workshare1.f: New test.
2981 * testsuite/libgomp.fortran/omp_workshare2.f: New test.
2982
29832005-08-30 Richard Henderson <rth@redhat.com>
2984
2985 * loop.c (GOMP_loop_static_start): Provide fallback wrapper
2986 function for when aliases are not usable.
2987 (GOMP_loop_dynamic_start, GOMP_loop_guided_start,
2988 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
2989 GOMP_loop_ordered_guided_start, GOMP_loop_static_next,
2990 GOMP_loop_dynamic_next, GOMP_loop_guided_next,
2991 GOMP_loop_ordered_static_next, GOMP_loop_ordered_dynamic_next,
2992 GOMP_loop_ordered_guided_next): Likewise.
2993 * ordered.c (GOMP_ordered_start): Likewise.
2994
29952005-08-01 Diego Novillo <dnovillo@redhat.com>
2996
2997 * testsuite/libgomp.dg/dg.exp: Use -O2 for now.
2998 * testsuite/libgomp.dg/omp_hello.c: Fix return code
2999 * testsuite/libgomp.dg/omp_matvec.c: Likewise.
3000 * testsuite/libgomp.dg/omp_orphan.c: Likewise
3001 * testsuite/libgomp.dg/omp_reduction.c: Likewise
3002 * testsuite/libgomp.dg/omp_workshare1.c: Likewise
3003 * testsuite/libgomp.dg/omp_workshare2.c: Likewise
3004 * testsuite/libgomp.dg/omp_workshare3.c: Likewise
3005 * testsuite/libgomp.dg/omp_workshare4.c: Likewise
3006
30072005-07-07 Eric Christopher <echristo@redhat.com>
3008 Diego Novillo <dnovillo@redhat.com>
3009
3010 * testsuite/libgomp.dg/dg.exp: Add -fopenmp to DEFAULT_CFLAGS.
3011 * testsuite/libgomp.dg/omp_hello.c: Add standard includes, fix
3012 up code.
3013 * testsuite/libgomp.dg/omp_matvec.c: Ditto.
3014 * testsuite/libgomp.dg/omp_orphan.c: Ditto.
3015 * testsuite/libgomp.dg/omp_reduction.c: Ditto.
3016 * testsuite/libgomp.dg/omp_workshare1.c: Ditto.
3017 * testsuite/libgomp.dg/omp_workshare2.c: Ditto.
3018 * testsuite/libgomp.dg/omp_workshare3.c: Ditto.
3019 * testsuite/libgomp.dg/omp_workshare4.c: Ditto.
3020
30212005-06-13 Diego Novillo <dnovillo@redhat.com>
3022
3023 * TOPLEVEL.patch: Remove.
3024
30252005-05-16 Richard Henderson <rth@redhat.com>
3026
3027 * configure.ac: Test for clock_gettime.
3028 * config.h.in, configure: Rebuild.
3029 * config/posix/time.c: Use recommended TIME_WITH_SYS_TIME pattern.
3030 (omp_get_wtime): Use clock_gettime if available.
3031 (omp_get_wtick): Use clock_getres if available.
3032
30332005-05-11 Richard Henderson <rth@redhat.com>
3034
3035 * config/linux/ia64/futex.h: New file.
3036 * configure.tgt: Use it.
3037
3038 * team.c (gomp_barrier_init, gomp_barrier_destroy): Mark inline.
3039
30402005-05-07 Richard Henderson <rth@redhat.com>
3041
3042 * config/linux/powerpc/futex.h: New file.
3043 * configure.tgt: Use it.
3044
3045 * config/linux/i486/futex.h: Merge ...
3046 * config/linux/x86_64/futex.h: ... into ...
3047 * config/linux/x86/futex.h: ... here.
3048 * configure.tgt: Update to match.
3049
30502005-05-06 Richard Henderson <rth@redhat.com>
3051
3052 * config/linux/alpha/futex.h: Conditionally define SYS_futex.
3053 * config/linux/i486/futex.h: Likewise.
3054 * config/linux/x86_64/futex.h: Likewise.
3055
3056 * config/linux/lock.c: New file.
3057 * config/linux/omp-lock.h: New file.
3058
3059 * critical.c, env.h: Don't include omp.h
3060 * config/posix/lock.c: Include libgomp.h instead of omp.h.
3061 * config/posix/time.c: Likewise.
3062 * config/posix/omp-lock.h: New file.
3063 * libgomp.h: Include omp-lock.h and omp.h.
3064 * Makefile.am (nodist_include_HEADERS): New.
3065 (omp.h): New rule.
3066 * configure.ac (PERL): New.
3067 * mkomp_h.pl: New file.
3068 * omp.h.in: Rename from omp.h; replace omp_lock_t and omp_nest_lock_t
3069 with templates.
3070 * Makefile.in, configure, testsuite/Makefile.in: Rebuild.
3071
3072 * testsuite/lib/libgomp-dg.exp (libgomp_init): Add include into
3073 build directory. Re-add -march=i486 hack.
3074
3075 * testsuite/lib/libgomp-dg.exp (libgomp_compile_flags): Remove.
3076 (libgomp_link_flags): Remove.
3077 (libgomp_initialized): Remove.
3078 (libgomp_init): Don't protect from reinitialization. Copy code
3079 from libstdc++ for getting the multilib set correctly.
3080
30812005-05-05 Richard Henderson <rth@redhat.com>
3082
3083 * config/linux/alpha/futex.h: New file.
3084 * configure.tgt (alpha*-*-linux*): Use it.
3085
3086 * config/posix/mutex.c: New file.
3087 * config/posix/sem.c: Use libgomp.h.
3088
3089 * configure.tgt (x86_64-linux): Also test CC for -m32.
3090 * config/linux/x86_64/futex.h (futex_wait): Fix r10 usage.
3091
a1daed2d 3092 * testsuite/lib/libgomp-dg.exp (libgomp_link_flags): Add /
953ff289
DN
3093 after $gccpath.
3094
3095 * Makefile.am (SUBDIRS): New.
3096 (libgomp_la_LDFLAGS): Add -lpthread.
3097 * configure.ac (AM_INIT_AUTOMAKE): Enable dependencies.
3098 * Makefile.in, aclocal.m4, config.h.in, configure: Rebuild.
3099
3100 * libgomp_g.h: New file.
3101 * libgomp.h: Split out all public declarations to libgomp_g.h.
3102 Use pragma GCC visibility instead of ATTRIBUTE_HIDDEN.
3103 * config/linux/mutex.h: Remove ATTRIBUTE_HIDDEN.
3104 * config/linux/sem.h: Likewise.
3105 * config/posix/sem.h: Likewise.
3106
3107 * Makefile.am (AM_LDFLAGS): New.
3108 (libgomp_version_script): Split out from ...
3109 (libgomp_la_LDFLAGS): ... here.
3110 (libgomp_version_info): New.
3111 * acinclude.m4 (LIBGOMP_CHECK_TLS): Use LIBGOMP_ENABLE.
3112 (LIBGOMP_ENABLE): New.
3113 (LIBGOMP_CHECK_LINKER_FEATURES): New.
3114 (LIBGOMP_ENABLE_SYMVERS): New.
3115 * configure.ac (AC_INIT): Version 1.0.
3116 (enable-version-specific-runtime-libs): Use LIBGOMP_ENABLE.
3117 (enable-linux-futex): Likewise. Rename from enable-futex.
3118 (libtool_VERSION): New.
3119 (LIBGOMP_ENABLE_SYMVERS): Use it.
3120 * configure.tgt: Check with_gnu_ld wrt have_tls optimizations.
3121 * Makefile.in, aclocal.m4, configure: Rebuild.
3122
3123 * config/linux/mutex.c: Include libgomp.h instead of mutex.h.
3124 (gomp_mutex_unlock_slow): Fix typo.
3125 * config/linux/sem.c: Similarly.
3126 (gomp_sem_post_slow): Fix typo.
3127 * config/linux/sem.h (gomp_sem_post_slow): Fix typo.
3128 * config/linux/i486/futex.h: Remove USE_LINUX_SYSENTER code.
3129 [__PIC__] (sys_futex0): Don't use tmp output in asm.
3130
3131 * Makefile.am (AM_CFLAGS): Expand with XCFLAGS.
3132 (libgomp_la_LDFLAGS): Add top_srcdir to path.
3133 * acinclude.m4: Copy libtool.m4 stuff from libgfortran.
3134 * configure.ac: Check for getloadavg. Substitute XCFLAGS and
3135 XLDFLAGS. Add XCFLAGS to CFLAGS around LIBGOMP_CHECK_SYNC_BUILTINS.
3136 * configure.tgt: Set XCFLAGS and XLDFLAGS instead of CFLAGS and
3137 LDFLAGS. Pull enable_futex check to top-level.
3138 * libgomp.h: Fix sem.h and mutex.h includes. Define ATTRIBUTE_HIDDEN.
3139 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
3140
3141 First attempt at real configury.
3142 * Makefile, config.h: Remove file.
3143 * Makefile.am, Makefile.in: New file.
3144 * acinclude.m4 aclocal.m4: New file.
3145 * configure.ac, configure.tgt, configure: New file.
3146
3147 * config/posix/lock.c: Rename from sys-lock.c.
3148 * config/posix/mutex.h: Rename from sys-mutex.h.
3149 * config/posix/sem.c: Rename from sys-sem.c.
3150 * config/posix/sem.h: Rename from sys-sem.h.
3151 * config/posix/proc.c: Rename from sys-proc.c.
3152 * config/posix/time.c: Rename from sys-proc.c.
3153
3154 * config/linux/mutex.c: New file.
3155 * config/linux/mutex.h: New file.
3156 * config/linux/sem.c: New file.
3157 * config/linux/sem.h: New file.
3158 * config/linux/i486/futex.h: New file.
3159 * config/linux/x86_64/futex.h: New file.
3160
31612005-05-04 Richard Henderson <rth@redhat.com>
3162
3163 * iter.c (gomp_iter_dynamic_next, gomp_iter_guided_next): New.
3164 * libgomp.h: Declare them.
3165 * loop.c (gomp_loop_dynamic_start, gomp_loop_guided_start,
3166 gomp_loop_dynamic_next, gomp_loop_guided_next): Use them.
3167
31682005-05-04 Richard Henderson <rth@redhat.com>
3169
3170 * libgomp-1 code drop
3171
31722005-05-04 Richard Henderson <rth@redhat.com>
3173
3174 * iter.c (gomp_iter_static_next): Return tri-state on 0.
3175 * ordered.c (gomp_ordered_static_next): Remove not_last argument.
3176 * libgomp.h (struct gomp_team_state): Make static_trip unsigned.
3177 (gomp_iter_static_next): Update.
3178 (gomp_ordered_static_next): Update.
3179 * loop.c (gomp_loop_static_start): Update for gomp_iter_static_next.
3180 (gomp_loop_ordered_static_start): Likewise. Exit early for a
3181 totally empty range.
3182 (gomp_loop_ordered_static_next): Refine test for calling
3183 gomp_ordered_static_next.
3184 * testsuite/ordered-1.c: Add case for more threads than iterations.
3185
3186 * iter.c (gomp_iter_runtime_next_locked): Remove.
3187 * loop.c (gomp_loop_static_start, gomp_loop_dynamic_start,
a1daed2d 3188 gomp_loop_guided_start, gomp_loop_ordered_static_start,
953ff289
DN
3189 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
3190 gomp_loop_static_next, gomp_loop_dynamic_next, gomp_loop_guided_next,
3191 gomp_loop_ordered_static_next, gomp_loop_ordered_dynamic_next,
3192 gomp_loop_ordered_guided_next): Downcase name, make static, add
3193 an external alias with the old name.
3194 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
3195 GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Use a
3196 switch and call one of the above static functions.
3197 * libgomp.h: Update.
3198
3199 * work.c (gomp_work_share_start): Lock the mutex for !first too.
3200 * loop.c (GOMP_loop_static_start, GOMP_loop_dynamic_start,
3201 GOMP_loop_guided_start, GOMP_loop_runtime_start,
3202 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
3203 GOMP_loop_ordered_guided_start): Update to match.
3204 * sections.c (GOMP_sections_start): Likewise.
3205 * single.c (GOMP_single_start, GOMP_single_copy_start): Likewise.
3206
3207 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
3208 gomp_ordered_static_init, gomp_ordered_static_next): Rename s/_loop//.
3209 Use bounds check instead of modulus.
3210 (gomp_ordered_sync): Split out of GOMP_ordered_start.
3211 (gomp_ordered_last): Don't sync with ordered_owner here.
3212 (gomp_ordered_next): Likewise.
3213 (gomp_ordered_static_loop_next): Likewise.
3214 * loop.c, libgomp.h: Update to match.
3215
3216 * libgomp.h (GOMP_barrier): Declare.
3217
3218 * testsuite/barrier-1.c: New file.
3219 * testsuite/critical-1.c: New file.
3220 * testsuite/ordered-2.c: New file.
3221 * testsuite/ordered-1.c: New file.
3222 * testsuite/sections-1.c: New file.
3223 * testsuite/single-1.c: New file.
3224 * testsuite/Makefile (TESTS): Add them.
3225
32262005-05-04 Richard Henderson <rth@redhat.com>
3227
3228 * libgomp.h (struct gomp_work_share): Add ordered_owner.
3229 * loop.c (GOMP_loop_static_start): If not the startup thread,
3230 acquire the mutex to wait for initialization complete.
3231 (GOMP_loop_ordered_static_start): Likewise.
3232 (GOMP_loop_ordered_runtime_start): Likewise.
3233 (GOMP_loop_ordered_static_first): Remove.
3234 (GOMP_loop_ordered_dynamic_first): Remove.
3235 (GOMP_loop_ordered_guided_first): Remove.
3236 (GOMP_loop_ordered_runtime_first): Remove.
3237 * ordered.c (gomp_ordered_loop_first): Post to own release when
3238 we're the first thread.
3239 (gomp_ordered_loop_last): Wait on release if not owner.
3240 (gomp_ordered_loop_next): Likewise.
3241 (gomp_ordered_static_loop_init): New.
3242 (gomp_ordered_static_loop_next): Use ordered_owner.
3243 (GOMP_ordered_start): Likewise.
3244 * work.c (gomp_new_work_share): Initialize ordered_owner.
3245
32462005-05-03 Richard Henderson <rth@redhat.com>
3247
3248 * Makefile (OPT): New.
3249 (CFLAGS): Use it.
3250
3251 * loop.c (GOMP_loop_end, GOMP_loop_end_nowait): New.
3252 * sections.c (GOMP_sections_end, GOMP_sections_end_nowait): New.
3253 * libgomp.h, libgomp.map, NOTES: Update to match.
3254
3255 * team.c (struct gomp_thread_start_data): Remove ts, fn, data.
3256 Add initialized and thr members.
3257 (gomp_thread_start): Pause when initially spawned to wait for
3258 the whole team to be created.
3259 (gomp_team_start): Release team members at the end.
3260
3261 * testsuite/loop-1.c (N): New. Use it instead of hardcoded 100.
3262 (f_foo_1): Use GOMP_loop_end.
3263 (f_foo_2): Use GOMP_loop_end_nowait.
3264
3265 * testsuite/loop-2.c: New file.
3266 * testsuite/Makefile (TESTS): Add it.
3267
32682005-05-03 Richard Henderson <rth@redhat.com>
3269
3270 * iter.c (gomp_iter_static_next): Fix overflow check typo.
3271 (gomp_iter_dynamic_next_locked): Fix overflow check thinko.
3272 * team.c (new_team): Initialize oldest_live_gen to 1 if no
3273 initial work_share.
3274
3275 * testsuite/Makefile: New file.
3276 * testsuite/loop-1.c: New file.
3277
32782005-05-03 Richard Henderson <rth@redhat.com>
3279
3280 Initial implementation and checkin.