]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - libgomp/ChangeLog
omp-low.c (lower_omp_ordered): Add argument to GOMP_SMD_ORDERED_* internal calls...
[thirdparty/gcc.git] / libgomp / ChangeLog
index 883939747561b434e4154a5786816ae672e34b33..15be0142a22549b80db643032de4c4f4659c5333 100644 (file)
+2015-11-14  Jakub Jelinek  <jakub@redhat.com>
+           Aldy Hernandez  <aldyh@redhat.com>
+           Ilya Verbin  <ilya.verbin@intel.com>
+
+       * ordered.c (gomp_doacross_init, GOMP_doacross_post,
+       GOMP_doacross_wait, gomp_doacross_ull_init, GOMP_doacross_ull_post,
+       GOMP_doacross_ull_wait): For GFS_GUIDED don't divide number of
+       iterators or IV by chunk size.
+       * parallel.c (gomp_resolve_num_threads): Don't assume that
+       if thr->ts.team is non-NULL, then pool must be non-NULL.
+       * libgomp-plugin.h (GOMP_PLUGIN_target_task_completion): Declare.
+       * libgomp.map (GOMP_PLUGIN_1.1): New symbol version, export
+       GOMP_PLUGIN_target_task_completion.
+       * Makefile.am (libgomp_la_SOURCES): Add priority_queue.c.
+       * Makefile.in: Regenerate.
+       * libgomp.h: Shuffle prototypes and forward definitions around so
+       priority queues can be defined.
+       (enum gomp_task_kind): Add GOMP_TASK_ASYNC_RUNNING.
+       (enum gomp_target_task_state): New enum.
+       (struct gomp_target_task): Add state, tgt, task and team fields.
+       (gomp_create_target_task): Change return type to bool, add
+       state argument.
+       (gomp_target_task_fn): Change return type to bool.
+       (struct gomp_device_descr): Add async_run_func.
+       (struct gomp_task): Remove children, next_child, prev_child,
+       next_queue, prev_queue, next_taskgroup, prev_taskgroup.
+       Add pnode field.
+       (struct gomp_taskgroup): Remove children.
+       Add taskgroup_queue.
+       (struct gomp_team): Change task_queue type to a priority queue.
+       (splay_compare): Define inline.
+       (priority_queue_offset): New.
+       (priority_node_to_task): New.
+       (task_to_priority_node): New.
+       * oacc-mem.c: Do not include splay-tree.h.
+       * priority_queue.c: New file.
+       * priority_queue.h: New file.
+       * splay-tree.c: Do not include splay-tree.h.
+       (splay_tree_foreach_internal): New.
+       (splay_tree_foreach): New.
+       * splay-tree.h: Become re-entrant if splay_tree_prefix is defined.
+       (splay_tree_callback): Define typedef.
+       * target.c (splay_compare): Move to libgomp.h.
+       (GOMP_target): Don't adjust *thr in any way around running offloaded
+       task.
+       (GOMP_target_ext): Likewise.  Handle target nowait.
+       (GOMP_target_update_ext, GOMP_target_enter_exit_data): Check
+       return value from gomp_create_target_task, if false, fallthrough
+       as if no dependencies exist.
+       (gomp_target_task_fn): Change return type to bool, return true
+       if the task should have another part scheduled later.  Handle
+       target nowait.
+       (gomp_load_plugin_for_device): Initialize async_run.
+       * task.c (gomp_init_task): Initialize children_queue.
+       (gomp_clear_parent_in_list): New.
+       (gomp_clear_parent_in_tree): New.
+       (gomp_clear_parent): Handle priorities.
+       (GOMP_task): Likewise.
+       (priority_queue_move_task_first,
+       gomp_target_task_completion, GOMP_PLUGIN_target_task_completion):
+       New functions.
+       (gomp_create_target_task): Use priority queues.  Change return type
+       to bool, add state argument, return false if for async
+       {{enter,exit} data,update} constructs no dependencies need to be
+       waited for, handle target nowait.  Set task->fn to NULL instead of
+       gomp_target_task_fn.
+       (verify_children_queue): Remove.
+       (priority_list_upgrade_task): New.
+       (priority_queue_upgrade_task): New.
+       (verify_task_queue): Remove.
+       (priority_list_downgrade_task): New.
+       (priority_queue_downgrade_task): New.
+       (gomp_task_run_pre): Use priority queues.
+       Abstract code out to priority_queue_downgrade_task.
+       (gomp_task_run_post_handle_dependers): Use priority queues.
+       (gomp_task_run_post_remove_parent): Likewise.
+       (gomp_task_run_post_remove_taskgroup): Likewise.
+       (gomp_barrier_handle_tasks): Likewise.  Handle target nowait target
+       tasks specially.
+       (GOMP_taskwait): Likewise.
+       (gomp_task_maybe_wait_for_dependencies): Likewise.  Abstract code to
+       priority-queue_upgrade_task.
+       (GOMP_taskgroup_start): Use priority queues.
+       (GOMP_taskgroup_end): Likewise.  Handle target nowait target tasks
+       specially.  If taskgroup is NULL, and thr->ts.level is 0, act as a
+       barrier.
+       * taskloop.c (GOMP_taskloop): Handle priorities.
+       * team.c (gomp_new_team): Call priority_queue_init.
+       (free_team): Call priority_queue_free.
+       (gomp_free_thread): Call gomp_team_end if thr->ts.team is artificial
+       team created for target nowait in implicit parallel region.
+       (gomp_team_start): For nested check, test thr->ts.level instead of
+       thr->ts.team != NULL.
+       * testsuite/libgomp.c/doacross-3.c: New test.
+       * testsuite/libgomp.c/ordered-5.c: New test.
+       * testsuite/libgomp.c/priority.c: New test.
+       * testsuite/libgomp.c/target-31.c: New test.
+       * testsuite/libgomp.c/target-32.c: New test.
+       * testsuite/libgomp.c/target-33.c: New test.
+       * testsuite/libgomp.c/target-34.c: New test.
+
+2015-11-13  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: New.
+
+       * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Sequential
+       loop is sequential.
+
+2015-11-13  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: New.
+
+2015-11-12  James Norris  <jnorris@codesourcery.com>
+           Joseph Myers  <joseph@codesourcery.com>
+
+       * libgomp.map (GOACC_2.0.1): Export GOACC_declare.
+       * oacc-parallel.c (GOACC_declare): New function.
+       * testsuite/libgomp.oacc-c-c++-common/declare-1.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Likewise.
+       * testsuite/libgomp.oacc-c++/declare-1.C: Likewise.
+
+2015-11-12  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/default-1.c: New.
+
+2015-11-1  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: New.
+
+2015-11-09  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Remove
+       inadvertent commit.
+
+2015-11-09  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: New.
+
+2015-11-06  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: XFAIL.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
+
+2015-11-05  Jakub Jelinek  <jakub@redhat.com>
+           Ilya Verbin  <ilya.verbin@intel.com>
+
+       * libgomp_g.h (GOMP_loop_nonmonotonic_dynamic_next,
+       GOMP_loop_nonmonotonic_dynamic_start,
+       GOMP_loop_nonmonotonic_guided_next,
+       GOMP_loop_nonmonotonic_guided_start,
+       GOMP_loop_ull_nonmonotonic_dynamic_next,
+       GOMP_loop_ull_nonmonotonic_dynamic_start,
+       GOMP_loop_ull_nonmonotonic_guided_next,
+       GOMP_loop_ull_nonmonotonic_guided_start,
+       GOMP_parallel_loop_nonmonotonic_dynamic,
+       GOMP_parallel_loop_nonmonotonic_guided): New prototypes.
+       (GOMP_target_41): Renamed to ...
+       (GOMP_target_ext): ... this.  Add num_teams and thread_limit
+       arguments.
+       (GOMP_target_data_41): Renamed to ...
+       (GOMP_target_data_ext): ... this.
+       (GOMP_target_update_41): Renamed to ...
+       (GOMP_target_update_ext): ... this.
+       * libgomp.map (GOMP_4.5): Export GOMP_target_ext,
+       GOMP_target_data_ext and GOMP_target_update_ext instead of
+       GOMP_target_41, GOMP_target_data_41 and GOMP_target_update_41.
+       Export GOMP_loop_nonmonotonic_dynamic_next,
+       GOMP_loop_nonmonotonic_dynamic_start,
+       GOMP_loop_nonmonotonic_guided_next,
+       GOMP_loop_nonmonotonic_guided_start,
+       GOMP_loop_ull_nonmonotonic_dynamic_next,
+       GOMP_loop_ull_nonmonotonic_dynamic_start,
+       GOMP_loop_ull_nonmonotonic_guided_next,
+       GOMP_loop_ull_nonmonotonic_guided_start,
+       GOMP_parallel_loop_nonmonotonic_dynamic and
+       GOMP_parallel_loop_nonmonotonic_guided.
+       * loop.c (GOMP_parallel_loop_nonmonotonic_dynamic,
+       GOMP_parallel_loop_nonmonotonic_guided,
+       GOMP_loop_nonmonotonic_dynamic_start,
+       GOMP_loop_nonmonotonic_guided_start,
+       GOMP_loop_nonmonotonic_dynamic_next,
+       GOMP_loop_nonmonotonic_guided_next): New aliases or functions.
+       * loop_ull.c (GOMP_loop_ull_nonmonotonic_dynamic_start,
+       GOMP_loop_ull_nonmonotonic_guided_start,
+       GOMP_loop_ull_nonmonotonic_dynamic_next,
+       GOMP_loop_ull_nonmonotonic_guided_next): Likewise.
+       * target.c (gomp_map_0len_lookup, gomp_map_val): New inline
+       functions.
+       (gomp_map_vars): Handle GOMP_MAP_ALWAYS_POINTER.  For
+       GOMP_MAP_ZERO_LEN_ARRAY_SECTION use gomp_map_0len_lookup.
+       Use gomp_map_val function.
+       (gomp_target_fallback_firstprivate): New static function.
+       (GOMP_target_41): Renamed to ...
+       (GOMP_target_ext): ... this.  Add num_teams and thread_limit
+       arguments.  Move firstprivate fallback handling into a new
+       function.
+       (GOMP_target_data_41): Renamed to ...
+       (GOMP_target_data_ext): ... this.
+       (GOMP_target_update_41): Renamed to ...
+       (GOMP_target_update_ext): ... this.
+       (gomp_exit_data): For GOMP_MAP_*ZERO_LEN* use
+       gomp_map_0len_lookup instead of gomp_map_lookup.
+       (omp_target_is_present): Use gomp_map_0len_lookup instead of
+       gomp_map_lookup.
+       * testsuite/libgomp.c/target-28.c: Likewise.
+       * testsuite/libgomp.c/monotonic-1.c: New test.
+       * testsuite/libgomp.c/monotonic-2.c: New test.
+       * testsuite/libgomp.c/nonmonotonic-1.c: New test.
+       * testsuite/libgomp.c/nonmonotonic-2.c: New test.
+       * testsuite/libgomp.c/pr66199-5.c: New test.
+       * testsuite/libgomp.c/pr66199-6.c: New test.
+       * testsuite/libgomp.c/pr66199-7.c: New test.
+       * testsuite/libgomp.c/pr66199-8.c: New test.
+       * testsuite/libgomp.c/pr66199-9.c: New test.
+       * testsuite/libgomp.c/reduction-11.c: New test.
+       * testsuite/libgomp.c/reduction-12.c: New test.
+       * testsuite/libgomp.c/reduction-13.c: New test.
+       * testsuite/libgomp.c/reduction-14.c: New test.
+       * testsuite/libgomp.c/reduction-15.c: New test.
+       * testsuite/libgomp.c/target-12.c (main): Adjust for
+       omp_target_is_present change for one-past-last element.
+       * testsuite/libgomp.c/target-17.c (foo): Drop tests where
+       the same var is both mapped and privatized.
+       * testsuite/libgomp.c/target-19.c (foo): Adjust for different
+       handling of zero-length array sections.
+       * testsuite/libgomp.c/target-28.c: New test.
+       * testsuite/libgomp.c/target-29.c: New test.
+       * testsuite/libgomp.c/target-30.c: New test.
+       * testsuite/libgomp.c/target-teams-1.c: New test.
+       * testsuite/libgomp.c++/member-6.C: New test.
+       * testsuite/libgomp.c++/member-7.C: New test.
+       * testsuite/libgomp.c++/monotonic-1.C: New test.
+       * testsuite/libgomp.c++/monotonic-2.C: New test.
+       * testsuite/libgomp.c++/nonmonotonic-1.C: New test.
+       * testsuite/libgomp.c++/nonmonotonic-2.C: New test.
+       * testsuite/libgomp.c++/pr66199-3.C: New test.
+       * testsuite/libgomp.c++/pr66199-4.C: New test.
+       * testsuite/libgomp.c++/pr66199-5.C: New test.
+       * testsuite/libgomp.c++/pr66199-6.C: New test.
+       * testsuite/libgomp.c++/pr66199-7.C: New test.
+       * testsuite/libgomp.c++/pr66199-8.C: New test.
+       * testsuite/libgomp.c++/pr66199-9.C: New test.
+       * testsuite/libgomp.c++/reduction-11.C: New test.
+       * testsuite/libgomp.c++/reduction-12.C: New test.
+       * testsuite/libgomp.c++/target-13.C: New test.
+       * testsuite/libgomp.c++/target-14.C: New test.
+       * testsuite/libgomp.c++/target-15.C: New test.
+       * testsuite/libgomp.c++/target-16.C: New test.
+       * testsuite/libgomp.c++/target-17.C: New test.
+       * testsuite/libgomp.c++/target-18.C: New test.
+       * testsuite/libgomp.c++/target-19.C: New test.
+
+2015-11-04  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-fortran/reduction-1.f90: Fix dimensions
+       and reduction copy.
+       * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New.
+
+2015-11-04  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * libgomp.oacc-c-c++-common/loop-red-g-1.c: New.
+       * libgomp.oacc-c-c++-common/loop-red-gwv-1.c: New.
+       * libgomp.oacc-c-c++-common/loop-red-v-1.c: New.
+       * libgomp.oacc-c-c++-common/loop-red-v-2.c: New.
+       * libgomp.oacc-c-c++-common/loop-red-w-1.c: New.
+       * libgomp.oacc-c-c++-common/loop-red-w-2.c: New.
+       * libgomp.oacc-c-c++-common/loop-red-wv-1.c: New.
+       * libgomp.oacc-fortran/reduction-5.f90: Avoid reference var.
+
+2015-11-03  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * libgomp.h (struct acc_dispatch_t): Remove args from exec_func.
+       * plugin/plugin-nvptx.c (nvptx_exec): Remove sizes & kinds arg.
+       (GOMP_OFFLOAD_openacc_parallel): Likewise.
+       * oacc-host.c (host_openacc_exec): Likewise.
+       * oacc-parallel.c (GOACC_parallel_keyed): Adjust exec_func call.
+
+2015-11-03  Julian Brown  <julian@codesourcery.com>
+           Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: New file.
+       * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c:
+       Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: Likewise.
+
+2015-11-03  James Norris  <jnorris@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: New
+       file.
+       * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c:
+       Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/atomic_rw-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/atomic_update-1.c: Likewise.
+       * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: New file.
+       * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
+
+2015-10-29  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * openacc.h (enum acc_device_t): Reformat. Ensure layout
+       compatibility.
+       (enum acc_async_t): Reformat.
+       (acc_on_device): Declare compatible with builtin and provide C++
+       wrapper.
+       * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: New.
+
+2015-10-29  Thomas Schwinge  <thomas@codesourcery.com>
+           Cesar Philippidis  <cesar@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: Rename to...
+       * testsuite/libgomp.oacc-c-c++-common/combined-directives-1.c:
+       ... this.  Add a description of the test at the top of the file.
+       * testsuite/libgomp.oacc-fortran/combdir-1.f90: Rename file to...
+       * testsuite/libgomp.oacc-fortran/combined-directives-1.f90:
+       ... this.  Add a description of the test at the top of the file.
+
+2015-10-28  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: New.
+
+2015-10-27  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * plugin/plugin-nvptx.c (nvptx_exec): Remove check on compute
+       dimensions.
+
+2015-10-27  Thomas Schwinge  <thomas@codesourcery.com>
+
+       PR testsuite/68063
+       * testsuite/libgomp.c++/member-1.C (A::m1): Add missing private clause.
+
+2015-10-27  James Norris  <jnorris@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: New file.
+       * testsuite/libgomp.oacc-fortran/combdir-1.f90: Likewise.
+
+2015-10-26  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Print to stderr.
+       * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
+
+       * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Remove explicit
+       acc_device_nvidia usage.
+       * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
+
+       * oacc-init.c (acc_shutdown): Call gomp_init_targets_once.
+       * testsuite/libgomp.oacc-c-c++-common/lib-8.c: New file.
+
+       PR libgomp/66518
+       * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Resolve XFAIL.
+
+       PR libgomp/65437
+       PR libgomp/66518
+       * oacc-mem.c (update_dev_host): Call goacc_lazy_initialize.
+       * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Remove XFAIL.
+
+2015-10-23  Tom de Vries  <tom@codesourcery.com>
+
+       PR testsuite/68063
+       * testsuite/libgomp.c++/member-2.C (A::m1): Add missing private clause.
+
+2015-10-20  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Set sane
+       vector_length.
+       * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
+
+2015-10-14  Ilya Verbin  <ilya.verbin@intel.com>
+           Aleksander Ivanushenko  <aleksander.ivanushenko@intel.com>
+
+       * target.c (gomp_map_vars): Initialize tgt->tgt_start and tgt->tgt_end
+       to 0 when mapnum is 0.
+
+2015-10-14  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * fortran.c (omp_get_place_proc_ids_, omp_get_partition_place_nums_):
+       Cast to int from int32_t.
+
+2015-10-13  Jakub Jelinek  <jakub@redhat.com>
+           Aldy Hernandez  <aldyh@redhat.com>
+           Ilya Verbin  <ilya.verbin@intel.com>
+
+       * config/linux/affinity.c (omp_get_place_num_procs,
+       omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
+       * config/linux/doacross.h: New file.
+       * config/posix/affinity.c (omp_get_place_num_procs,
+       omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
+       * config/posix/doacross.h: New file.
+       * env.c: Include gomp-constants.h.
+       (struct gomp_task_icv): Rename run_sched_modifier to
+       run_sched_chunk_size.
+       (gomp_max_task_priority_var): New variable.
+       (parse_schedule): Rename run_sched_modifier to run_sched_chunk_size.
+       (handle_omp_display_env): Change _OPENMP value from 201307 to
+       201511.  Print OMP_MAX_TASK_PRIORITY.
+       (initialize_env): Parse OMP_MAX_TASK_PRIORITY.
+       (omp_set_schedule, omp_get_schedule): Rename modifier argument to
+       chunk_size and run_sched_modifier to run_sched_chunk_size.
+       (omp_get_max_task_priority, omp_get_initial_device,
+       omp_get_num_places, omp_get_place_num, omp_get_partition_num_places,
+       omp_get_partition_place_nums): New functions.
+       * fortran.c (omp_set_schedule_, omp_set_schedule_8_,
+       omp_get_schedule_, omp_get_schedule_8_): Rename modifier argument
+       to chunk_size.
+       (omp_get_num_places_, omp_get_place_num_procs_,
+       omp_get_place_num_procs_8_, omp_get_place_proc_ids_,
+       omp_get_place_proc_ids_8_, omp_get_place_num_,
+       omp_get_partition_num_places_, omp_get_partition_place_nums_,
+       omp_get_partition_place_nums_8_, omp_get_initial_device_,
+       omp_get_max_task_priority_): New functions.
+       * libgomp_g.h (GOMP_loop_doacross_static_start,
+       GOMP_loop_doacross_dynamic_start, GOMP_loop_doacross_guided_start,
+       GOMP_loop_doacross_runtime_start, GOMP_loop_ull_doacross_static_start,
+       GOMP_loop_ull_doacross_dynamic_start,
+       GOMP_loop_ull_doacross_guided_start,
+       GOMP_loop_ull_doacross_runtime_start, GOMP_doacross_post,
+       GOMP_doacross_wait, GOMP_doacross_ull_post, GOMP_doacross_wait,
+       GOMP_taskloop, GOMP_taskloop_ull, GOMP_target_41,
+       GOMP_target_data_41, GOMP_target_update_41,
+       GOMP_target_enter_exit_data): New prototypes.
+       (GOMP_task): Add prototype argument.
+       * libgomp.h (_LIBGOMP_CHECKING_): Define to 0 if not yet defined.
+       (struct gomp_doacross_work_share): New type.
+       (struct gomp_work_share): Add doacross field.
+       (struct gomp_task_icv): Rename run_sched_modifier to
+       run_sched_chunk_size.
+       (enum gomp_task_kind): Rename GOMP_TASK_IFFALSE to
+       GOMP_TASK_UNDEFERRED.  Add comments.
+       (struct gomp_task_depend_entry): Add comments.
+       (struct gomp_task): Likewise.
+       (struct gomp_taskgroup): Likewise.
+       (struct gomp_target_task): New type.
+       (struct gomp_team): Add comment.
+       (gomp_get_place_proc_ids_8, gomp_doacross_init,
+       gomp_doacross_ull_init, gomp_task_maybe_wait_for_dependencies,
+       gomp_create_target_task, gomp_target_task_fn): New prototypes.
+       (struct target_var_desc): New type.
+       (struct target_mem_desc): Adjust comment.  Use struct
+       target_var_desc instead of splay_tree_key for list.
+       (REFCOUNT_INFINITY): Define.
+       (struct splay_tree_key_s): Remove copy_from field.
+       (struct gomp_device_descr): Add dev2dev_func field.
+       (enum gomp_map_vars_kind): New enum.
+       (gomp_map_vars): Add one argument.
+       * libgomp.map (OMP_4.5): Export omp_get_max_task_priority,
+       omp_get_max_task_priority_, omp_get_num_places, omp_get_num_places_,
+       omp_get_place_num_procs, omp_get_place_num_procs_,
+       omp_get_place_num_procs_8_, omp_get_place_proc_ids,
+       omp_get_place_proc_ids_, omp_get_place_proc_ids_8_, omp_get_place_num,
+       omp_get_place_num_, omp_get_partition_num_places,
+       omp_get_partition_num_places_, omp_get_partition_place_nums,
+       omp_get_partition_place_nums_, omp_get_partition_place_nums_8_,
+       omp_get_initial_device, omp_get_initial_device_, omp_target_alloc,
+       omp_target_free, omp_target_is_present, omp_target_memcpy,
+       omp_target_memcpy_rect, omp_target_associate_ptr and
+       omp_target_disassociate_ptr.
+       (GOMP_4.0.2): Renamed to ...
+       (GOMP_4.5): ... this.  Export GOMP_target_41, GOMP_target_data_41,
+       GOMP_target_update_41, GOMP_target_enter_exit_data, GOMP_taskloop,
+       GOMP_taskloop_ull, GOMP_loop_doacross_dynamic_start,
+       GOMP_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
+       GOMP_loop_doacross_static_start, GOMP_doacross_post,
+       GOMP_doacross_wait, GOMP_loop_ull_doacross_dynamic_start,
+       GOMP_loop_ull_doacross_guided_start,
+       GOMP_loop_ull_doacross_runtime_start,
+       GOMP_loop_ull_doacross_static_start, GOMP_doacross_ull_post and
+       GOMP_doacross_ull_wait.
+       * libgomp.texi: Document omp_get_max_task_priority.
+       Rename modifier argument to chunk_size for omp_set_schedule and
+       omp_get_schedule.  Document OMP_MAX_TASK_PRIORITY env var.
+       * loop.c (GOMP_loop_runtime_start): Adjust for run_sched_modifier
+       to run_sched_chunk_size renaming.
+       (GOMP_loop_ordered_runtime_start): Likewise.
+       (gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
+       gomp_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
+       GOMP_parallel_loop_runtime_start): New functions.
+       (GOMP_parallel_loop_runtime): Adjust for run_sched_modifier
+       to run_sched_chunk_size renaming.
+       (GOMP_loop_doacross_static_start, GOMP_loop_doacross_dynamic_start,
+       GOMP_loop_doacross_guided_start): New functions or aliases.
+       * loop_ull.c (GOMP_loop_ull_runtime_start): Adjust for
+       run_sched_modifier to run_sched_chunk_size renaming.
+       (GOMP_loop_ull_ordered_runtime_start): Likewise.
+       (gomp_loop_ull_doacross_static_start,
+       gomp_loop_ull_doacross_dynamic_start,
+       gomp_loop_ull_doacross_guided_start,
+       GOMP_loop_ull_doacross_runtime_start): New functions.
+       (GOMP_loop_ull_doacross_static_start,
+       GOMP_loop_ull_doacross_dynamic_start,
+       GOMP_loop_ull_doacross_guided_start): New functions or aliases.
+       * oacc-mem.c (acc_map_data, present_create_copy,
+       gomp_acc_insert_pointer): Pass GOMP_MAP_VARS_OPENACC instead of false
+       to gomp_map_vars.
+       (gomp_acc_remove_pointer): Use copy_from from target_var_desc.
+       * oacc-parallel.c (GOACC_data_start): Pass GOMP_MAP_VARS_OPENACC
+       instead of false to gomp_map_vars.
+       (GOACC_parallel_keyed): Likewise.  Use copy_from from target_var_desc.
+       * omp.h.in (omp_lock_hint_t): New type.
+       (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
+       omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
+       omp_get_place_num, omp_get_partition_num_places,
+       omp_get_partition_place_nums, omp_get_initial_device,
+       omp_get_max_task_priority, omp_target_alloc, omp_target_free,
+       omp_target_is_present, omp_target_memcpy, omp_target_memcpy_rect,
+       omp_target_associate_ptr, omp_target_disassociate_ptr): New
+       prototypes.
+       * omp_lib.f90.in (omp_lock_hint_kind): New parameter.
+       (omp_lock_hint_none, omp_lock_hint_uncontended,
+       omp_lock_hint_contended, omp_lock_hint_nonspeculative,
+       omp_lock_hint_speculative): New parameters.
+       (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
+       omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
+       omp_get_place_num, omp_get_partition_num_places,
+       omp_get_partition_place_nums, omp_get_initial_device,
+       omp_get_max_task_priority): New interfaces.
+       (omp_set_schedule, omp_get_schedule): Rename modifier argument
+       to chunk_size.
+       * omp_lib.h.in (omp_lock_hint_kind): New parameter.
+       (omp_lock_hint_none, omp_lock_hint_uncontended,
+       omp_lock_hint_contended, omp_lock_hint_nonspeculative,
+       omp_lock_hint_speculative): New parameters.
+       (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
+       omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
+       omp_get_place_num, omp_get_partition_num_places,
+       omp_get_partition_place_nums, omp_get_initial_device,
+       omp_get_max_task_priority): New functions and subroutines.
+       * ordered.c: Include stdarg.h and string.h.
+       (MAX_COLLAPSED_BITS): Define.
+       (gomp_doacross_init, GOMP_doacross_post, GOMP_doacross_wait,
+       gomp_doacross_ull_init, GOMP_doacross_ull_post,
+       GOMP_doacross_ull_wait): New functions.
+       * target.c: Include errno.h.
+       (resolve_device): If device is not initialized, call
+       gomp_init_device on it.
+       (gomp_map_lookup): New function.
+       (gomp_map_vars_existing): Add tgt_var argument, fill it in.
+       Don't bump refcount if REFCOUNT_INFINITY.  Handle
+       GOMP_MAP_ALWAYS_TO_P.
+       (get_kind): Rename is_openacc argument to short_mapkind.
+       (gomp_map_pointer): Use gomp_map_lookup.
+       (gomp_map_fields_existing): New function.
+       (gomp_map_vars): Rename is_openacc argument to short_mapkind
+       and is_target to pragma_kind.  Handle GOMP_MAP_VARS_ENTER_DATA,
+       handle GOMP_MAP_FIRSTPRIVATE_INT, GOMP_MAP_STRUCT,
+       GOMP_MAP_USE_DEVICE_PTR, GOMP_MAP_ZERO_LEN_ARRAY_SECTION.
+       Adjust for tgt->list changed type and copy_from living in there.
+       (gomp_copy_from_async): Adjust for tgt->list changed type and
+       copy_from living in there.
+       (gomp_unmap_vars): Likewise.
+       (gomp_update): Likewise.  Rename is_openacc argument to
+       short_mapkind.  Don't fail if object is not mapped.
+       (gomp_load_image_to_device): Initialize refcount to
+       REFCOUNT_INFINITY.
+       (gomp_target_fallback): New function.
+       (gomp_get_target_fn_addr): Likewise.
+       (GOMP_target): Adjust gomp_map_vars caller, use
+       gomp_get_target_fn_addr and gomp_target_fallback.
+       (GOMP_target_41): New function.
+       (gomp_target_data_fallback): New function.
+       (GOMP_target_data): Use it, adjust gomp_map_vars caller.
+       (GOMP_target_data_41): New function.
+       (GOMP_target_update): Adjust gomp_update caller.
+       (GOMP_target_update_41): New function.
+       (gomp_exit_data, GOMP_target_enter_exit_data,
+       gomp_target_task_fn, omp_target_alloc, omp_target_free,
+       omp_target_is_present, omp_target_memcpy,
+       omp_target_memcpy_rect_worker, omp_target_memcpy_rect,
+       omp_target_associate_ptr, omp_target_disassociate_ptr,
+       gomp_load_plugin_for_device): New functions.
+       * task.c: Include gomp-constants.h.  Include taskloop.c
+       twice to get GOMP_taskloop and GOMP_taskloop_ull definitions.
+       (gomp_task_handle_depend): New function.
+       (GOMP_task): Use it.  Add priority argument.  Use
+       gomp-constant.h constants instead of hardcoded numbers.
+       Rename GOMP_TASK_IFFALSE to GOMP_TASK_UNDEFERRED.
+       (gomp_create_target_task): New function.
+       (verify_children_queue, verify_taskgroup_queue,
+       verify_task_queue): New functions.
+       (gomp_task_run_pre): Call verify_*_queue functions.
+       If an upcoming tied task is about to leave the sibling or
+       taskgroup queues in an invalid state, adjust appropriately.
+       Remove taskgroup argument.  Add comments.
+       (gomp_task_run_post_handle_dependers): Add comments.
+       (gomp_task_run_post_remove_parent): Likewise.
+       (gomp_barrier_handle_tasks): Adjust gomp_task_run_pre caller.
+       (GOMP_taskwait): Likewise.  Add comments.
+       (gomp_task_maybe_wait_for_dependencies): Fix scheduling
+       problem such that the first non parent_depends_on task does not
+       end up at the end of the children queue.
+       (GOMP_taskgroup_start): Rename GOMP_TASK_IFFALSE to
+       GOMP_TASK_UNDEFERRED.
+       (GOMP_taskgroup_end): Adjust gomp_task_run_pre caller.
+       * taskloop.c: New file.
+       * testsuite/lib/libgomp.exp
+       (check_effective_target_offload_device_nonshared_as): New proc.
+       * testsuite/libgomp.c/affinity-2.c: New test.
+       * testsuite/libgomp.c/doacross-1.c: New test.
+       * testsuite/libgomp.c/doacross-2.c: New test.
+       * testsuite/libgomp.c/examples-4/declare_target-1.c (fib_wrapper):
+       Add map clause to target.
+       * testsuite/libgomp.c/examples-4/declare_target-4.c (accum): Likewise.
+       * testsuite/libgomp.c/examples-4/declare_target-5.c (accum): Likewise.
+       * testsuite/libgomp.c/examples-4/device-1.c (main): Likewise.
+       * testsuite/libgomp.c/examples-4/device-3.c (main): Likewise.
+       * testsuite/libgomp.c/examples-4/target_data-3.c (gramSchmidt):
+       Likewise.
+       * testsuite/libgomp.c/examples-4/teams-2.c (dotprod): Likewise.
+       * testsuite/libgomp.c/examples-4/teams-3.c (dotprod): Likewise.
+       * testsuite/libgomp.c/examples-4/teams-4.c (dotprod): Likewise.
+       * testsuite/libgomp.c/for-2.h (OMPTGT, OMPTO, OMPFROM): Define if
+       not defined.  Use those where needed.
+       * testsuite/libgomp.c/for-4.c: New test.
+       * testsuite/libgomp.c/for-5.c: New test.
+       * testsuite/libgomp.c/for-6.c: New test.
+       * testsuite/libgomp.c/linear-1.c: New test.
+       * testsuite/libgomp.c/ordered-4.c: New test.
+       * testsuite/libgomp.c/pr66199-2.c (f2): Adjust for linear clause
+       only allowed on the loop iterator.
+       * testsuite/libgomp.c/pr66199-3.c: New test.
+       * testsuite/libgomp.c/pr66199-4.c: New test.
+       * testsuite/libgomp.c/reduction-7.c: New test.
+       * testsuite/libgomp.c/reduction-8.c: New test.
+       * testsuite/libgomp.c/reduction-9.c: New test.
+       * testsuite/libgomp.c/reduction-10.c: New test.
+       * testsuite/libgomp.c/target-1.c (fn2, fn3, fn4): Add
+       map(tofrom:s).
+       * testsuite/libgomp.c/target-2.c (fn2, fn3, fn4): Likewise.
+       * testsuite/libgomp.c/target-7.c (foo): Add map(h) where needed.
+       * testsuite/libgomp.c/target-11.c: New test.
+       * testsuite/libgomp.c/target-12.c: New test.
+       * testsuite/libgomp.c/target-13.c: New test.
+       * testsuite/libgomp.c/target-14.c: New test.
+       * testsuite/libgomp.c/target-15.c: New test.
+       * testsuite/libgomp.c/target-16.c: New test.
+       * testsuite/libgomp.c/target-17.c: New test.
+       * testsuite/libgomp.c/target-18.c: New test.
+       * testsuite/libgomp.c/target-19.c: New test.
+       * testsuite/libgomp.c/target-20.c: New test.
+       * testsuite/libgomp.c/target-21.c: New test.
+       * testsuite/libgomp.c/target-22.c: New test.
+       * testsuite/libgomp.c/target-23.c: New test.
+       * testsuite/libgomp.c/target-24.c: New test.
+       * testsuite/libgomp.c/target-25.c: New test.
+       * testsuite/libgomp.c/target-26.c: New test.
+       * testsuite/libgomp.c/target-27.c: New test.
+       * testsuite/libgomp.c/taskloop-1.c: New test.
+       * testsuite/libgomp.c/taskloop-2.c: New test.
+       * testsuite/libgomp.c/taskloop-3.c: New test.
+       * testsuite/libgomp.c/taskloop-4.c: New test.
+       * testsuite/libgomp.c++/ctor-13.C: New test.
+       * testsuite/libgomp.c++/doacross-1.C: New test.
+       * testsuite/libgomp.c++/examples-4/declare_target-2.C:
+       Replace offload_device with offload_device_nonshared_as.
+       * testsuite/libgomp.c++/for-12.C: New test.
+       * testsuite/libgomp.c++/for-13.C: New test.
+       * testsuite/libgomp.c++/for-14.C: New test.
+       * testsuite/libgomp.c++/linear-1.C: New test.
+       * testsuite/libgomp.c++/member-1.C: New test.
+       * testsuite/libgomp.c++/member-2.C: New test.
+       * testsuite/libgomp.c++/member-3.C: New test.
+       * testsuite/libgomp.c++/member-4.C: New test.
+       * testsuite/libgomp.c++/member-5.C: New test.
+       * testsuite/libgomp.c++/ordered-1.C: New test.
+       * testsuite/libgomp.c++/reduction-5.C: New test.
+       * testsuite/libgomp.c++/reduction-6.C: New test.
+       * testsuite/libgomp.c++/reduction-7.C: New test.
+       * testsuite/libgomp.c++/reduction-8.C: New test.
+       * testsuite/libgomp.c++/reduction-9.C: New test.
+       * testsuite/libgomp.c++/reduction-10.C: New test.
+       * testsuite/libgomp.c++/reference-1.C: New test.
+       * testsuite/libgomp.c++/simd14.C: New test.
+       * testsuite/libgomp.c++/target-2.C (fn2): Add map(tofrom: s) clause.
+       * testsuite/libgomp.c++/target-5.C: New test.
+       * testsuite/libgomp.c++/target-6.C: New test.
+       * testsuite/libgomp.c++/target-7.C: New test.
+       * testsuite/libgomp.c++/target-8.C: New test.
+       * testsuite/libgomp.c++/target-9.C: New test.
+       * testsuite/libgomp.c++/target-10.C: New test.
+       * testsuite/libgomp.c++/target-11.C: New test.
+       * testsuite/libgomp.c++/target-12.C: New test.
+       * testsuite/libgomp.c++/taskloop-1.C: New test.
+       * testsuite/libgomp.c++/taskloop-2.C: New test.
+       * testsuite/libgomp.c++/taskloop-3.C: New test.
+       * testsuite/libgomp.c++/taskloop-4.C: New test.
+       * testsuite/libgomp.c++/taskloop-5.C: New test.
+       * testsuite/libgomp.c++/taskloop-6.C: New test.
+       * testsuite/libgomp.c++/taskloop-7.C: New test.
+       * testsuite/libgomp.c++/taskloop-8.C: New test.
+       * testsuite/libgomp.c++/taskloop-9.C: New test.
+       * testsuite/libgomp.fortran/affinity1.f90: New test.
+       * testsuite/libgomp.fortran/affinity2.f90: New test.
+
+2015-10-13  Tom de Vries  <tom@codesourcery.com>
+
+       PR tree-optimization/67476
+       * testsuite/libgomp.c/autopar-3.c: New test.
+       * testsuite/libgomp.c/autopar-4.c: New test.
+       * testsuite/libgomp.c/autopar-5.c: New test.
+       * testsuite/libgomp.c/autopar-6.c: New test.
+       * testsuite/libgomp.c/autopar-7.c: New test.
+       * testsuite/libgomp.c/autopar-8.c: New test.
+
+2015-10-12  James Norris  <jnorris@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Fix loop
+       initializer.
+
+2015-10-09  David Malcolm  <dmalcolm@redhat.com>
+
+       * testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp,
+       using load_gcc_lib.
+
+2015-10-02  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * oacc-ptx.h: Remove file, moving its content into...
+       * config/nvptx/fortran.c: ... here...
+       * config/nvptx/oacc-init.c: ..., here...
+       * config/nvptx/oacc-parallel.c: ..., and here.
+       * config/nvptx/openacc.f90: New file.
+       * plugin/plugin-nvptx.c: Don't include "oacc-ptx.h".
+       (link_ptx): Don't link in predefined bits of PTX code.
+
+2015-09-30  Nathan Sidwell  <nathan@codesourcery.com>
+           Bernd Schmidt <bernds@codesourcery.com>
+
+       * plugin/plugin-nvptx.c (targ_fn_launch): Use GOMP_DIM_MAX.
+       (struct targ_ptx_obj): New.
+       (nvptx_tdata): Move earlier, change data format.
+       (link_ptx): Take targ_ptx_obj ptr and count.  Allow multiple
+       objects.
+       (GOMP_OFFLOAD_load_image): Adjust.
+
+2015-09-30  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Add checkpoint.
+       * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
+       * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
+       * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
+       * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
+       * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
+       * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
+       * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
+       * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
+       * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
+
+2015-09-29  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * oacc-init.c (acc_on_device): Force optimization level.
+
+2015-09-29  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * plugin/plugin-nvptx.c (ARRAYSIZE): Delete.
+       (cuda_errlist): Delete.
+       (cuda_error): Reimplement.
+
+2015-09-28  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * libgomp.h (acc_dispatch_t): Replace separate geometry args with
+       array.
+       * libgomp.map (GOACC_parallel_keyed): New.
+       * oacc-parallel.c (goacc_wait): Take pointer to va_list.  Adjust
+       all callers.
+       (GOACC_parallel_keyed): New interface.  Lose geometry arguments
+       and take keyed varargs list.  Adjust call to exec_func.
+       (GOACC_parallel): Force host fallback.
+       * libgomp_g.h (GOACC_parallel): Remove.
+       (GOACC_parallel_keyed): Declare.
+       * plugin/plugin-nvptx.c (struct targ_fn_launch): New struct.
+       (stuct targ_gn_descriptor): Replace name field with launch field.
+       (nvptx_exec): Lose separate geometry args, take array.  Process
+       dynamic dimensions and adjust.
+       (struct nvptx_tdata): Replace fn_names field with fn_descs.
+       (GOMP_OFFLOAD_load_image): Adjust for change in function table
+       data.
+       (GOMP_OFFLOAD_openacc_parallel): Adjust for change in dimension
+       passing.
+       * oacc-host.c (host_openacc_exec): Adjust for change in dimension
+       passing.
+
+2015-09-22  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       PR libgomp/67141
+       * oacc-int.h (goacc_host_init): Add declaration.
+       * oacc-host.c (goacc_host_init): Remove static and constructor attribute.
+       * oacc-init.c (goacc_runtime_initialize): Call goacc_host_init() at end.
+
+2015-09-08  Aditya Kumar  <hiraditya@msn.com>
+            Sebastian Pop  <s.pop@samsung.com>
+
+       * testsuite/libgomp.graphite/bounds.c (int foo): Modifed test case to
+       match o/p.
+       * testsuite/libgomp.graphite/force-parallel-1.c (void parloop): Same.
+       * testsuite/libgomp.graphite/force-parallel-4.c: Same.
+       * testsuite/libgomp.graphite/force-parallel-5.c: Same.
+       * testsuite/libgomp.graphite/force-parallel-7.c: Same.
+       * testsuite/libgomp.graphite/force-parallel-8.c: Same.
+
+2015-09-03  Jakub Jelinek  <jakub@redhat.com>
+
+       * configure.tgt: Add missing ;; in between nvptx and rtems
+       snippets.
+
+2015-09-03  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * config/posix/pool.h (gomp_adjust_thread_attr): New.
+       * config/rtems/pool.h (gomp_adjust_thread_attr): Likewise.
+       (gomp_thread_pool_reservoir): Add priority member.
+       * confi/rtems/proc.c (allocate_thread_pool_reservoir): Add
+       priority.
+       (parse_thread_pools): Likewise.
+       * team.c (gomp_team_start): Call configuration provided
+       gomp_adjust_thread_attr(). Destroy thread attributes if
+       necessary.
+       * libgomp.texi: Document GOMP_RTEMS_THREAD_POOLS.
+
+2015-09-03  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * config/posix/pool.h: New.
+       * config/rtems/pool.h: Likewise.
+       * config/rtems/proc.c: Likewise.
+       * libgomp.h (gomp_thread_destructor): Declare.
+       * team.c: Include configuration provided "pool.h".
+       (gomp_get_thread_pool): Define in configuration.
+       (gomp_team_end): Call configuration defined
+       gomp_release_thread_pool().
+
+2015-09-03  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * config/rtems/bar.c: New.
+       * config/rtems/bar.h: Likewise.
+       * config/rtems/mutex.c: Likewise.
+       * config/rtems/mutex.h: Likewise.
+       * config/rtems/sem.c: Likewise.
+       * config/rtems/sem.h: Likewise.
+       * configure.ac (*-*-rtems*): Check that Newlib provides a proper
+       <sys/lock.h> header file.
+       * configure.tgt (*-*-rtems*): Enable RTEMS configuration if
+       supported by Newlib.
+       * configure: Regenerate.
+
+2015-09-03  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * team.c (gomp_new_thread_pool): Delete and move content to ...
+       (gomp_get_thread_pool): ... new function.  Allocate and
+       initialize thread pool on demand.
+       (get_last_team): Use gomp_get_thread_pool().
+       (gomp_team_start): Delete thread pool initialization.
+
+2015-09-03  Tom de Vries  <tom@codesourcery.com>
+
+       PR tree-optimization/65637
+       * testsuite/libgomp.c/autopar-2.c: New test.
+
+2015-08-29  Tom de Vries  <tom@codesourcery.com>
+
+       PR tree-optimization/46193
+       * testsuite/libgomp.c/pr46193.c: New test.
+
+2015-08-24  Nathan Sidwell  <nathan@codesourcery.com>
+
+       libgomp/
+       * libgomp.map: Add 4.0.2 version.
+       * target.c (offload_image_descr): Add version field.
+       (gomp_load_image_to_device): Add version argument.  Adjust plugin
+       call.  Improve load mismatch diagnostic.
+       (gomp_unload_image_from_device): Add version argument.  Adjust plugin
+       call.
+       (GOMP_offload_regster): Make stub function, move bulk to ...
+       (GOMP_offload_register_ver): ... here.  Process version argument.
+       (GOMP_offload_unregister): Make stub function, move bulk to ...
+       (GOMP_offload_unregister_ver): ... here.  Process version argument.
+       (gomp_init_device): Process version field.
+       (gomp_unload_device): Process version field.
+       (gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT
+       macros.  Check plugin version.
+       * libgomp.h (gomp_device_descr): Add version function field.  Adjust
+       loader and unloader types.
+       * oacc-host.c: Include gomp-constants.h.
+       (host_version): New.
+       (host_load_image, host_unload_image): Adjust.
+       (host_dispatch): Add host_version.
+       * plugin/plugin-nvptx.c: Include gomp-constants.h.
+       (GOMP_OFFLOAD_version): New.
+       (GOMP_OFFLOAD_load_image): Add version arg and check it.
+       (GOMP_OFFLOAD_unload_image): Likewise.
+       * plugin/plugin-host.c: Include gomp-constants.h.
+       (GOMP_OFFLOAD_version): New.
+       (GOMP_OFFLOAD_load_image): Add version arg.
+       (GOMP_OFFLOAD_unload_image): Likewise.
+
+2015-08-24  Tom de Vries  <tom@codesourcery.com>
+
+       PR tree-optimization/65468
+       * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test.
+
+2015-08-24  Tom de Vries  <tom@codesourcery.com>
+
+       PR tree-optimization/65468
+       * testsuite/libgomp.c/static-chunk-size-one.c: New test.
+
+2015-08-24  Joost VandeVondele  <vondele@gnu.gcc.org>
+
+       PR libgomp/66761
+       PR libgomp/67303
+       * iter.c (gomp_iter_dynamic_next): Employ an atomic load.
+       (gomp_iter_guided_next): Idem.
+       * iter_ull.c (gomp_iter_ull_dynamic_next): Idem.
+       (gomp_iter_ull_guided_next): Idem.
+       * config/linux/wait.h (do_spin): Idem.
+
+2015-08-10  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * libgomp-plugin.h (enum offload_target_type): Remove
+       OFFLOAD_TARGET_TYPE_HOST_NONSHM.
+       * openacc.f90 (openacc_kinds): Remove acc_device_host_nonshm.
+       * openacc.h (enum acc_device_t): Likewise.
+       * openacc_lib.h: Likewise.
+       * oacc-init.c (name_of_acc_device_t): Don't handle it.
+       (acc_on_device): Just use __builtin_acc_on_device.
+       * testsuite/libgomp.oacc-c-c++-common/if-1.c: Don't forbid usage
+       of acc_on_device builtin.
+       * plugin/plugin-host.h: Remove file.
+       * plugin/plugin-host.c: Likewise, but salvage some content into...
+       * oacc-host.c: ... this file.
+       * plugin/Makefrag.am: Don't build libgomp-plugin-host_nonshm.la.
+       * plugin/configfrag.ac (offload_targets): Don't add host_nonshm.
+       * Makefile.in: Regenerate.
+       * configure: Likewise.
+       * testsuite/lib/libgomp.exp
+       (check_effective_target_openacc_host_nonshm_selected): Remove.
+       * testsuite/libgomp.oacc-c++/c++.exp: Don't handle
+       ACC_DEVICE_TYPE=host_nonshm.
+       * testsuite/libgomp.oacc-c/c.exp: Likewise.
+       * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
+       * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
+       * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
+
+2015-08-10  Thomas Schwinge  <thomas@codesourcery.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       * config/nvptx/affinity.c: New file.
+       * config/nvptx/alloc.c: Likewise.
+       * config/nvptx/bar.c: Likewise.
+       * config/nvptx/barrier.c: Likewise.
+       * config/nvptx/critical.c: Likewise.
+       * config/nvptx/env.c: Likewise.
+       * config/nvptx/error.c: Likewise.
+       * config/nvptx/fortran.c: Likewise.
+       * config/nvptx/iter.c: Likewise.
+       * config/nvptx/iter_ull.c: Likewise.
+       * config/nvptx/libgomp-plugin.c: Likewise.
+       * config/nvptx/lock.c: Likewise.
+       * config/nvptx/loop.c: Likewise.
+       * config/nvptx/loop_ull.c: Likewise.
+       * config/nvptx/mutex.c: Likewise.
+       * config/nvptx/oacc-async.c: Likewise.
+       * config/nvptx/oacc-cuda.c: Likewise.
+       * config/nvptx/oacc-host.c: Likewise.
+       * config/nvptx/oacc-init.c: Likewise.
+       * config/nvptx/oacc-mem.c: Likewise.
+       * config/nvptx/oacc-parallel.c: Likewise.
+       * config/nvptx/oacc-plugin.c: Likewise.
+       * config/nvptx/omp-lock.h: Likewise.
+       * config/nvptx/ordered.c: Likewise.
+       * config/nvptx/parallel.c: Likewise.
+       * config/nvptx/proc.c: Likewise.
+       * config/nvptx/ptrlock.c: Likewise.
+       * config/nvptx/sections.c: Likewise.
+       * config/nvptx/sem.c: Likewise.
+       * config/nvptx/single.c: Likewise.
+       * config/nvptx/splay-tree.c: Likewise.
+       * config/nvptx/target.c: Likewise.
+       * config/nvptx/task.c: Likewise.
+       * config/nvptx/team.c: Likewise.
+       * config/nvptx/time.c: Likewise.
+       * config/nvptx/work.c: Likewise.
+       * configure.ac: Don't probe pthreads support for host nvptx*-*-*.
+       * configure: Regenerate.
+       * configure.tgt (config_path): Set to "nvptx" for target
+       nvptx*-*-*.
+
+2015-08-10  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/vector-type-1.c: New file.
+
+2015-08-03  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * plugin/plugin-nvptx.c: Don't include dlfcn.h.
+       (cuda_errlist): Constify.
+       (errmsg):  Move into ...
+       (cuda_error): ... here.  Make smaller.
+       (_XSTR, _STR): Delete.
+       (cuda_synames): Delete.
+       (verify_device_library): Delete.
+       (nvptx_init): Don't call it.
+
+2015-07-28  Tom de Vries  <tom@codesourcery.com>
+
+       * testsuite/libgomp.c/uns-outer-4.c: New test.
+
+2015-07-24  Cesar Philippidis  <cesar@codesourcery.com>
+
+       * testsuite/libgomp.c/pr66714.c: New test.
+
+2015-07-22  Maxim Blumenthal  <maxim.blumenthal@intel.com>
+
+       PR libgomp/66950
+       * testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45.
+       (fib_ref): New function.
+       (fib): Correct corner cases in the recursion.
+       (main): Replace the non-simd loop with fib_ref call.
+       * testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New
+       subroutine.
+       (fibonacci): Lower the parameter N to 30.  Correct accordingly check
+       for the last array element value.  Replace the non-simd loop with
+       fib_ref call.  Remove redundant b_ref array.  Remove the comparison
+       of the last array element with according Fibonacci sequence element.
+       (fib): Correct corner cases in the recursion.
+
+2015-07-21  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * target.c (gomp_offload_image_to_device): Rename to ...
+       (gomp_load_image_to_device): ... here.
+       (GOMP_offload_register): Adjust call.
+       (gomp_init_device): Likewise.
+       (gomp_unload_image_from_device): New.  Broken out of ...
+       (GOMP_offload_unregister): ... here.  Call it.
+       (gomp_unload_device): New.
+       * libgomp.h (gomp_unload_device): Declare.
+       * oacc-init.c (acc_shutdown_1): Unload from device before deleting
+       mem maps.
+
+2015-07-20  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * oacc-parallel.c (GOACC_parallel): Move variadic handling into
+       wait=-specific if.
+       (GOACC_enter_exit_data, GOACC_update): Use consistent num_waits
+       !=0 condition.
+       (goacc_waits): Move !num_waits handling to ...
+       (GOACC_wait): ... here, the only caller that might have zero waits.
+
+       * plugin/plugin-nvptx.c (struct targ_fn_descriptor): Move later.
+       (struct ptx_image_data): Move earlier, add fns field.
+       (struct ptx_device): Add images and image_lock fields.
+       (ptx_images, ptx_image_lock): Delete.
+       (nvptx_open_device): Initialize images and image_lock fields.
+       (nvptx_close_device): Destroy image_lock.
+       (GOMP_OFFLOAD_load_image): Register image to device-specific fields.
+       (GOMP_OFFLOAD_unload_image): Unregister image from device-specific
+       fields.
+
+2015-07-17  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * target.c (GOMP_offload_register): Use int for device type arg.
+       (GOMP_offload_unregister): Likewise.
+
+       * target.c (struct_offload_image_descr): Constify host_table.
+       (gomp_offload_image_to_device): Likewise.
+       (GOMP_offload_register, GOMP_offload_unregister): Likewise.
+
+       * libgomp.h (gomp_device_descr): Constify target data arguments.
+       * target.c (struct offload_image_descr): Constify target_data.
+       (gomp_offload_image_to_device): Likewise.
+       (GOMP_offload_register): Likewise.
+       (GOMP_offload_unrefister): Likewise.
+       * plugin/plugin-host.c (GOMP_OFFLOAD_load_image,
+       GOMP_OFFLOAD_unload_image): Constify target data.
+       * plugin/plugin-nvptx.c (struct ptx_image_data): Constify target data.
+       (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): Likewise.
+
+2015-07-16  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * plugin/plugin-nvptx.c (link_ptx): Constify string argument.
+       Workaround driver library const error.
+       (struct nvptx_tdata, nvptx_tdata_t): New.
+       (GOMP_OFFLOAD_load_image): Use struct for target_data's real
+       type.
+
+2015-07-15  Maxim Blumenthal  <maxim.blumenthal@intel.com>
+
+       * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Change type
+       of EPS parameter from integer to real.
+       * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: (check): Change
+       type of EPS parameter from integer to real.
+
+2015-07-15  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * team.c (get_last_team): New.
+       (gomp_new_team): Recycle last non-nested team if possible.
+       (gomp_team_end): Move team work share list free lock destruction
+       to ...
+       (free_team): ... here.
+
+2015-07-14  Maxim Blumenthal  <maxim.blumenthal@intel.com>
+
+       * testsuite/libgomp.c/examples-4/simd-3.c: (main): Change type of res
+       and ref from int to double.  Replaced their comparison with
+       an inequality of their difference and EPS.
+       * testsuite/libgomp.c/examples-4/simd-8.c: (main): Replace the
+       comparison of pri and a reference number with an inequality of their
+       difference and EPS.
+       * testsuite/libgomp.fortran/examples-4/simd-3.f90: (main): Replaced
+       the comparison of sum and sum_ref with an inequality of their
+       difference and EPS.
+       * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Replace
+       the comparison of pri and a reference number with an inequality of
+       their difference and EPS.
+
+2015-07-13  Maxim Blumenthal  <maxim.blumenthal@intel.com>
+
+       * testsuite/libgomp.c++/examples-4/e.53.2.C: Renamed to...
+       * testsuite/libgomp.c++/examples-4/declare_target-2.C: ...this.
+       * testsuite/libgomp.c++/examples-4/e.51.5.C: Renamed to...
+       * testsuite/libgomp.c++/examples-4/target_data-5.C: ...this.
+       * testsuite/libgomp.c/examples-4/e.56.3.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/array_sections-3.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.56.4.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/array_sections-4.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.55.1.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/async_target-1.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.55.2.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/async_target-2.c: ...this.
+       (vec_mult_ref): Remove v1 and v2 arguments, turn them into local
+       variables.
+       (vec_mult): Likewise.  Add #pragma omp taskwait.
+       (main): Adjust caller.
+       * testsuite/libgomp.c/examples-4/e.53.1.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/declare_target-1.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.53.3.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/declare_target-3.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.53.4.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/declare_target-4.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.53.5.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/declare_target-5.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.57.1.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/device-1.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.57.2.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/device-2.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.57.3.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/device-3.c: ...this.
+       * testsuite/libgomp.c/examples-4/simd-1.c: New file.
+       * testsuite/libgomp.c/examples-4/simd-2.c: New file.
+       * testsuite/libgomp.c/examples-4/simd-3.c: New file.
+       * testsuite/libgomp.c/examples-4/simd-4.c: New file.
+       * testsuite/libgomp.c/examples-4/simd-5.c: New file.
+       * testsuite/libgomp.c/examples-4/simd-6.c: New file.
+       * testsuite/libgomp.c/examples-4/simd-7.c: New file.
+       * testsuite/libgomp.c/examples-4/simd-8.c: New file.
+       * testsuite/libgomp.c/examples-4/e.50.1.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target-1.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.50.2.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target-2.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.50.3.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target-3.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.50.4.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target-4.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.50.5.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target-5.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.51.1.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target_data-1.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.51.2.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target_data-2.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.51.3.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target_data-3.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.51.4.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target_data-4.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.51.6.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target_data-6.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.51.7.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target_data-7.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.52.1.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target_update-1.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.52.2.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/target_update-2.c: ...this.
+       * testsuite/libgomp.c/examples-4/task_dep-1.c: New file.
+       * testsuite/libgomp.c/examples-4/task_dep-2.c: New file.
+       * testsuite/libgomp.c/examples-4/task_dep-3.c: New file.
+       * testsuite/libgomp.c/examples-4/task_dep-4.c: New file.
+       * testsuite/libgomp.c/examples-4/task_dep-5.c: New file.
+       * testsuite/libgomp.c/examples-4/e.54.2.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/teams-2.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.54.3.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/teams-3.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.54.4.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/teams-4.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.54.5.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/teams-5.c: ...this.
+       * testsuite/libgomp.c/examples-4/e.54.6.c: Renamed to...
+       * testsuite/libgomp.c/examples-4/teams-6.c: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/async_target-1.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/async_target-2.f90: ...this.
+       (vec_mult): Add !$omp taskwait.
+       * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/device-1.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/device-2.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/device-3.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/simd-1.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/simd-2.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/simd-3.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/simd-4.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/simd-5.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/simd-6.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/simd-7.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/simd-8.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/e.50.1.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target-1.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target-2.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target-3.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target-4.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target-5.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target_data-1.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target_data-2.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target_data-3.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target_data-4.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target_data-5.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target_data-6.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target_data-7.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target_update-1.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/target_update-2.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: New file.
+       * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/teams-2.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/teams-3.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/teams-4.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/teams-5.f90: ...this.
+       * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Renamed to...
+       * testsuite/libgomp.fortran/examples-4/teams-6.f90: ...this.
+
+2015-07-10  Tom de Vries  <tom@codesourcery.com>
+
+       * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: New test.
+       * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: New test.
+
+2015-07-08  Thomas Schwinge  <thomas@codesourcery.com>
+
+       PR libgomp/65099
+       * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return 0 if not
+       in a 64-bit configuration.
+       * testsuite/libgomp.oacc-c++/c++.exp: Don't attempt nvidia
+       offloading testing if no such device is available.
+       * testsuite/libgomp.oacc-c/c.exp: Likewise.
+       * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
+
 2015-07-08  Tom de Vries  <tom@codesourcery.com>
 
        * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Fix