re PR target/80090 (Incorrect assembler - output_addr_const may generate visibility...
[gcc.git] / libgomp / ChangeLog
index e96f1495fc255044b19c70e65b2952fcef6250b8..ca29cf773c34dbf799687ad897bce22f976fb005 100644 (file)
+2017-04-27  Jakub Jelinek  <jakub@redhat.com>
+
+       PR bootstrap/80531
+       * configure.tgt (*-*-aix*): Add -frandom-seed=$@ to XCFLAGS to avoid
+       bootstrap compare failures.
+
+2017-04-20  Alexander Monakov  <amonakov@ispras.ru>
+
+       * testsuite/libgomp.c/target-36.c: New testcase.
+
+2017-04-13  Jakub Jelinek  <jakub@redhat.com>
+
+       * plugin/plugin-nvptx.c (cuda_lib_inited): Use signed char type
+       instead of char.
+
+2017-04-11  Jakub Jelinek  <jakub@redhat.com>
+
+       PR libgomp/80394
+       * testsuite/libgomp.c/pr80394.c: New test.
+
+2017-04-04  Jakub Jelinek  <jakub@redhat.com>
+
+       PR libgomp/79876
+       * config/posix/thread-stacksize.h: New file.
+       * config/darwin/thread-stacksize.h: New file.
+       * config/nvptx/thread-stacksize.h: New file.
+       * env.c: Include thread-stacksize.h.
+       (initialize_env): Initialize stacksize to GOMP_DEFAULT_STACKSIZE
+       instead of 0.  Call pthread_attr_setstacksize even if
+       GOMP_DEFAULT_STACKSIZE is non-zero.
+
+2017-03-30  Jakub Jelinek  <jakub@redhat.com>
+
+       * env.c (initialize_env): Initialize stacksize to 0.
+
+2017-03-22  Cesar Philippidis  <cesar@codesourcery.com>
+
+       PR c++/80029
+       * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: New test.
+
+2017-03-08  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/79940
+       * testsuite/libgomp.c/pr79940.c: New test.
+
+2017-02-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * testsuite/libgomp.c/pr48591.c: Enable on all __float128
+       targets.
+       Add __float128 options.
+
+2017-02-11  John David Anglin  <danglin@gcc.gnu.org>
+
+       * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Remove
+       hppa*-*-* dg-skip-if directive.
+
+2017-02-09  Jakub Jelinek  <jakub@redhat.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Move
+       dg-skip-if directive into a comment.
+
+2017-02-09  Nathan Sidwell  <nathan@codesourcery.com>
+           Chung-Lin Tang  <cltang@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/tile-1.c: New.
+       * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust and
+       add additional case.
+       * testsuite/libgomp.oacc-c-c++-common/vprop.c: XFAIL under
+       "openacc_nvidia_accel_selected".
+       * libgomp.oacc-fortran/nested-function-1.f90 (test2):
+       Add num_workers(8) clause.
+
+2017-02-08  John David Anglin  <danglin@gcc.gnu.org>
+
+       * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Skip on
+       hppa*-*-*.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Don't
+       include complex.h on hppa*-*-hpux*.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
+
+2017-02-02  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * plugin/plugin-nvptx.c (nvptx_exec): Make it static.
+
+       * libgomp-plugin.h (GOMP_OFFLOAD_openacc_parallel): Rename to
+       GOMP_OFFLOAD_openacc_exec.  Adjust all users.
+       (GOMP_OFFLOAD_openacc_get_current_cuda_device): Rename to
+       GOMP_OFFLOAD_openacc_cuda_get_current_device.  Adjust all users.
+       (GOMP_OFFLOAD_openacc_get_current_cuda_context): Rename to
+       GOMP_OFFLOAD_openacc_cuda_get_current_context.  Adjust all users.
+       (GOMP_OFFLOAD_openacc_get_cuda_stream): Rename to
+       GOMP_OFFLOAD_openacc_cuda_get_stream.  Adjust all users.
+       (GOMP_OFFLOAD_openacc_set_cuda_stream): Rename to
+       GOMP_OFFLOAD_openacc_cuda_set_stream.  Adjust all users.
+
+2017-01-31  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * libgomp-plugin.h: #include <stdbool.h>.
+       (GOMP_OFFLOAD_get_name, GOMP_OFFLOAD_get_caps)
+       (GOMP_OFFLOAD_get_type, GOMP_OFFLOAD_get_num_devices)
+       (GOMP_OFFLOAD_init_device, GOMP_OFFLOAD_fini_device)
+       (GOMP_OFFLOAD_version, GOMP_OFFLOAD_load_image)
+       (GOMP_OFFLOAD_unload_image, GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free)
+       (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_host2dev)
+       (GOMP_OFFLOAD_dev2dev, GOMP_OFFLOAD_can_run, GOMP_OFFLOAD_run)
+       (GOMP_OFFLOAD_async_run, GOMP_OFFLOAD_openacc_parallel)
+       (GOMP_OFFLOAD_openacc_register_async_cleanup)
+       (GOMP_OFFLOAD_openacc_async_test)
+       (GOMP_OFFLOAD_openacc_async_test_all)
+       (GOMP_OFFLOAD_openacc_async_wait)
+       (GOMP_OFFLOAD_openacc_async_wait_async)
+       (GOMP_OFFLOAD_openacc_async_wait_all)
+       (GOMP_OFFLOAD_openacc_async_wait_all_async)
+       (GOMP_OFFLOAD_openacc_async_set_async)
+       (GOMP_OFFLOAD_openacc_create_thread_data)
+       (GOMP_OFFLOAD_openacc_destroy_thread_data)
+       (GOMP_OFFLOAD_openacc_get_current_cuda_device)
+       (GOMP_OFFLOAD_openacc_get_current_cuda_context)
+       (GOMP_OFFLOAD_openacc_get_cuda_stream)
+       (GOMP_OFFLOAD_openacc_set_cuda_stream): New prototypes.
+       * libgomp.h (struct acc_dispatch_t, struct gomp_device_descr): Use
+       these.
+       * plugin/plugin-hsa.c (GOMP_OFFLOAD_load_image)
+       (GOMP_OFFLOAD_unload_image): Fix argument types.
+
+2017-01-26  Jakub Jelinek  <jakub@redhat.com>
+
+       * testsuite/lib/libgomp.exp
+       (check_effective_target_hsa_offloading_selected_nocache): Fix up
+       check_compile invocation.  Fix up removal of executable.  Drop
+       bogus "2>&1" argument.
+
+       * testsuite/libgomp.fortran/declare-simd-4.f90: Add cleanup-modules
+       directive.
+
+2017-01-24  Pekka Jääskeläinen  <pekka@parmance.com>
+           Martin Jambor  <mjambor@suse.cz>
+
+       * plugin/hsa.h: Moved to top level include.
+       * plugin/plugin-hsa.c: Chanfgd include of hsa.h accordingly.
+
+2017-01-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR other/79046
+       * testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
+       of cat to get version from BASE-VER file.
+       * testsuite/Makefile.in: Regenerated.
+
+2017-01-19  Jakub Jelinek  <jakub@redhat.com>
+
+       * plugin/cuda/cuda.h (CUdeviceptr): Typedef to unsigned long long even
+       for _WIN64.
+
+2017-01-17  Jakub Jelinek  <jakub@redhat.com>
+
+       * plugin/hsa.h: Add GCC runtime library exception.
+       * plugin/hsa_ext_finalize.h: Likewise.
+
+       * plugin/configfrag.ac: For --without-cuda-driver don't initialize
+       CUDA_DRIVER_INCLUDE nor CUDA_DRIVER_LIB.  If both
+       CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB are empty and linking small
+       cuda program fails, define PLUGIN_NVPTX_DYNAMIC to 1 and use
+       plugin/include/cuda as include dir and -ldl instead of -lcuda as
+       library to link ptx plugin against.
+       * plugin/plugin-nvptx.c: Include dlfcn.h if PLUGIN_NVPTX_DYNAMIC.
+       (CUDA_CALLS): Define.
+       (cuda_lib, cuda_lib_inited): New variables.
+       (init_cuda_lib): New function.
+       (CUDA_CALL_PREFIX): Define.
+       (CUDA_CALL_ERET, CUDA_CALL_ASSERT): Use CUDA_CALL_PREFIX.
+       (CUDA_CALL): Use FN instead of (FN).
+       (CUDA_CALL_NOCHECK): Define.
+       (cuda_error, fini_streams_for_device, select_stream_for_async,
+       nvptx_attach_host_thread_to_device, nvptx_open_device, link_ptx,
+       event_gc, nvptx_exec, nvptx_async_test, nvptx_async_test_all,
+       nvptx_wait_all, nvptx_set_clocktick, GOMP_OFFLOAD_unload_image,
+       nvptx_stacks_alloc, nvptx_stacks_free, GOMP_OFFLOAD_run): Use
+       CUDA_CALL_NOCHECK.
+       (nvptx_init): Call init_cuda_lib, if it fails, return false.  Use
+       CUDA_CALL_NOCHECK.
+       (nvptx_get_num_devices): Call init_cuda_lib, if it fails, return 0.
+       Use CUDA_CALL_NOCHECK.
+       * plugin/cuda/cuda.h: New file.
+       * config.h.in: Regenerated.
+       * configure: Regenerated.
+
+       PR other/79046
+       * configure.ac: Add GCC_BASE_VER.
+       * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
+       get version from BASE-VER file.
+       * testsuite/Makefile.in: Regenerated.
+       * configure: Regenerated.
+       * Makefile.in: Regenerated.
+
+2017-01-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR libgomp/60670
+       * Makefile.am: Make fincludedir multilib-aware.
+       * Makefile.in: Regenerate.
+
+2017-01-01  Jakub Jelinek  <jakub@redhat.com>
+
+       Update copyright years.
+
+       * libgomp.texi: Bump @copying's copyright year.
+
+2016-12-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * libgomp/config/rtems/pool.h (gomp_thread_pool_reservoir): Use
+       pthread_spinlock_t instead of gomp_mutex_t lock.
+       (gomp_get_thread_pool): Likewise.
+       (gomp_release_thread_pool): Likewise.
+       * libgomp/config/rtems/proc.c (allocate_thread_pool_reservoir):
+       Likewise.
+
+2016-12-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * config/rtems/pool.h (gomp_get_thread_pool): Return proper
+       thread pool in case nthreads == 1.
+
+2016-11-30  Alexander Monakov  <amonakov@ispras.ru>
+
+       * config/nvptx/env.c: Delete.
+       * icv.c: Move definitions of ICV variables back ...
+       * env.c: ...here.  Do not compile environment-related functionality if
+       LIBGOMP_OFFLOADED_ONLY is set.
+
+2016-11-30  Alexander Monakov  <amonakov@ispras.ru>
+
+       * configure.ac [nvptx*-*-*] (libgomp_offloaded_only): Set and use it...
+       (LIBGOMP_OFFLOADED_ONLY): ...here; new define.
+       * configure: Regenerate.
+       * config.h.in: Likewise.
+
+2016-11-30  Alexander Monakov  <amonakov@ispras.ru>
+
+       * Makefile.in: Regenerate with automake-1.11.6.
+       * aclocal.m4: Likewise.
+       * configure: Likewise.
+       * testsuite/Makefile.in: Likewise.
+
+2016-11-28  Alexander Monakov  <amonakov@ispras.ru>
+
+       * config/nvptx/critical.c: Delete to use generic implementation.
+
+2016-11-28  Jonas Hahnfeld  <Hahnfeld@itc.rwth-aachen.de>
+
+       * config/linux/affinity.c [!HAVE_PTHREAD_AFFINITY_NP]: Include
+       ../../affinity.c as fallback.
+       * config/nvptx/affinity.c: Delete to use fallback implementation.
+
+2016-11-23  Alexander Monakov  <amonakov@ispras.ru>
+            Jakub Jelinek  <jakub@redhat.com>
+           Dmitry Melnik  <dm@ispras.ru>
+
+       * Makefile.am (libgomp_la_SOURCES): Add atomic.c, icv.c, icv-device.c.
+       * Makefile.in. Regenerate.
+       * configure.ac [nvptx*-*-*] (libgomp_use_pthreads): Set and use it...
+       (LIBGOMP_USE_PTHREADS): ...here; new define.
+       * configure: Regenerate.
+       * config.h.in: Likewise.
+       * config/posix/affinity.c: Move to...
+       * affinity.c: ...here (new file).  Guard use of Pthreads-specific
+       interface by LIBGOMP_USE_PTHREADS. 
+       * critical.c: Split out GOMP_atomic_{start,end} into...
+       * atomic.c: ...here (new file).
+       * env.c: Split out ICV definitions into...
+       * icv.c: ...here (new file) and...
+       * icv-device.c: ...here. New file.
+       * config/linux/lock.c (gomp_init_lock_30): Move to generic lock.c.
+       (gomp_destroy_lock_30): Ditto.
+       (gomp_set_lock_30): Ditto.
+       (gomp_unset_lock_30): Ditto.
+       (gomp_test_lock_30): Ditto.
+       (gomp_init_nest_lock_30): Ditto.
+       (gomp_destroy_nest_lock_30): Ditto.
+       (gomp_set_nest_lock_30): Ditto.
+       (gomp_unset_nest_lock_30): Ditto.
+       (gomp_test_nest_lock_30): Ditto.
+       * lock.c: New.
+       * config/nvptx/lock.c: New.
+       * config/nvptx/bar.c: New.
+       * config/nvptx/bar.h: New.
+       * config/nvptx/doacross.h: New.
+       * config/nvptx/error.c: New.
+       * config/nvptx/icv-device.c: New.
+       * config/nvptx/mutex.h: New.
+       * config/nvptx/pool.h: New.
+       * config/nvptx/proc.c: New.
+       * config/nvptx/ptrlock.h: New.
+       * config/nvptx/sem.h: New.
+       * config/nvptx/simple-bar.h: New.
+       * config/nvptx/target.c: New.
+       * config/nvptx/task.c: New.
+       * config/nvptx/team.c: New.
+       * config/nvptx/time.c: New.
+       * config/posix/simple-bar.h: New.
+       * libgomp.h: Guard pthread.h inclusion.  Include simple-bar.h.
+       (gomp_num_teams_var): Declare.
+       (struct gomp_thread_pool): Change threads_dock member to
+       gomp_simple_barrier_t.
+       [__nvptx__] (gomp_thread): New implementation.
+       (gomp_thread_attr): Guard by LIBGOMP_USE_PTHREADS.
+       (gomp_thread_destructor): Ditto.
+       (gomp_init_thread_affinity): Ditto.
+       * team.c: Guard uses of Pthreads-specific interfaces by
+       LIBGOMP_USE_PTHREADS.  Adjust all uses of threads_dock.
+       (gomp_free_thread) [__nvptx__]: Do not call 'free'.
+       * config/nvptx/alloc.c: Delete.
+       * config/nvptx/barrier.c: Ditto.
+       * config/nvptx/fortran.c: Ditto.
+       * config/nvptx/iter.c: Ditto.
+       * config/nvptx/iter_ull.c: Ditto.
+       * config/nvptx/loop.c: Ditto.
+       * config/nvptx/loop_ull.c: Ditto.
+       * config/nvptx/ordered.c: Ditto.
+       * config/nvptx/parallel.c: Ditto.
+       * config/nvptx/priority_queue.c: Ditto.
+       * config/nvptx/sections.c: Ditto.
+       * config/nvptx/single.c: Ditto.
+       * config/nvptx/splay-tree.c: Ditto.
+       * config/nvptx/work.c: Ditto.
+       * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Pass
+       -foffload=-lgfortran in addition to -lgfortran.
+       * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags): Ditto.
+       * plugin/plugin-nvptx.c: Include <limits.h>.
+       (struct targ_fn_descriptor): Add new fields.
+       (struct ptx_device): Ditto.  Set them...
+       (nvptx_open_device): ...here.
+       (nvptx_adjust_launch_bounds): New.
+       (nvptx_host2dev): Allow NULL 'nvthd'.
+       (nvptx_dev2host): Ditto.
+       (GOMP_OFFLOAD_get_caps): Add GOMP_OFFLOAD_CAP_OPENMP_400.
+       (link_ptx): Adjust log sizes.
+       (nvptx_host2dev): Allow NULL 'nvthd'.
+       (nvptx_dev2host): Ditto.
+       (nvptx_set_clocktick): New.  Use it...
+       (GOMP_OFFLOAD_load_image): ...here.  Set new targ_fn_descriptor
+       fields.
+       (GOMP_OFFLOAD_dev2dev): New.
+       (nvptx_adjust_launch_bounds): New.
+       (nvptx_stacks_size): New.
+       (nvptx_stacks_alloc): New.
+       (nvptx_stacks_free): New.
+       (GOMP_OFFLOAD_run): New.
+       (GOMP_OFFLOAD_async_run): New (stub).
+
+2016-11-23  Martin Jambor  <mjambor@suse.cz>
+
+       * testsuite/libgomp.hsa.c/bits-insns.c: New test.
+       * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
+
+2016-11-23  Martin Liska  <mliska@suse.cz>
+            Martin Jambor  <mjambor@suse.cz>
+
+       * plugin/hsa.h: New file.
+       * plugin/hsa_ext_finalize.h: New file.
+       * plugin/configfrag.ac: Remove hsa-kmt-lib test.  Added checks for
+       header file unistd.h, and functions secure_getenv, __secure_getenv,
+       getuid, geteuid, getgid and getegid.
+       * plugin/Makefrag.am (libgomp_plugin_hsa_la_CPPFLAGS): Added
+       -D_GNU_SOURCE.
+       * plugin/plugin-hsa.c: Include config.h, inttypes.h and stdbool.h.
+       Handle various cases of secure_getenv presence, add an implementation
+       when we can test effective UID and GID.
+       (struct hsa_runtime_fn_info): New structure.
+       (hsa_runtime_fn_info hsa_fns): New variable.
+       (hsa_runtime_lib): Likewise.
+       (support_cpu_devices): Likewise.
+       (init_enviroment_variables): Load newly introduced ENV
+       variables.
+       (hsa_warn): Call hsa run-time functions via hsa_fns structure.
+       (hsa_fatal): Likewise.
+       (DLSYM_FN): New macro.
+       (init_hsa_runtime_functions): New function.
+       (suitable_hsa_agent_p): Call hsa run-time functions via hsa_fns
+       structure.  Depending on environment, also allow CPU devices.
+       (init_hsa_context): Call hsa run-time functions via hsa_fns structure.
+       (get_kernarg_memory_region): Likewise.
+       (GOMP_OFFLOAD_init_device): Likewise.
+       (destroy_hsa_program): Likewise.
+       (init_basic_kernel_info): New function.
+       (GOMP_OFFLOAD_load_image): Use it.
+       (create_and_finalize_hsa_program): Call hsa run-time functions via
+       hsa_fns structure.
+       (create_single_kernel_dispatch): Likewise.
+       (release_kernel_dispatch): Likewise.
+       (init_single_kernel): Likewise.
+       (parse_target_attributes): Allow up multiple HSA grid dimensions.
+       (get_group_size): New function.
+       (run_kernel): Likewise.
+       (GOMP_OFFLOAD_run): Outline most functionality to run_kernel.
+       (GOMP_OFFLOAD_fini_device): Call hsa run-time functions via hsa_fns
+       structure.
+       * testsuite/lib/libgomp.exp: Remove hsa_kmt_lib support.
+       * testsuite/libgomp-test-support.exp.in: Likewise.
+       * Makefile.in: Regenerated.
+       * aclocal.m4: Likewise.
+       * config.h.in: Likewise.
+       * configure: Likewise.
+       * testsuite/Makefile.in: Likewise.
+
+2016-11-15  Martin Jambor  <mjambor@suse.cz>
+            Alexander Monakov  <amonakov@ispras.ru>
+
+       * testsuite/libgomp.fortran/examples-4/device-1.f90 (e_57_1): Add
+       mapping clauses to target constructs.
+       * testsuite/libgomp.fortran/examples-4/device-3.f90 (e_57_3): Ditto.
+
+2016-11-15  Matthias Klose  <doko@ubuntu.com>
+
+       * configure: Regenerate.
+
+2016-11-10  Jakub Jelinek  <jakub@redhat.com>
+
+       * omp_lib.f90.in (openmp_version): Change to 201511 from 201307.
+       * omp_lib.h.in (openmp_version): Likewise.
+       * testsuite/libgomp.fortran/openmp_version-1.f: Expect 201511 instead
+       of 201307.
+       * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
+
+       * testsuite/libgomp.fortran/examples-4/declare_target-1.f90
+       (fib_wrapper): Add map(from: x) clause.
+       * testsuite/libgomp.fortran/examples-4/declare_target-2.f90
+       (e_53_2): Likewise.
+       * testsuite/libgomp.fortran/examples-4/declare_target-4.f90
+       (accum): Add map(tmp) clause.
+       * testsuite/libgomp.fortran/examples-4/declare_target-5.f90
+       (accum): Add map(tofrom: tmp) clause.
+       * testsuite/libgomp.fortran/examples-4/target_data-3.f90
+       (gramSchmidt): Likewise.
+       * testsuite/libgomp.fortran/examples-4/teams-2.f90 (dotprod): Add
+       map(tofrom: sum) clause.
+       * testsuite/libgomp.fortran/nestedfn5.f90 (foo): Add twice
+       map (alloc: a, l) clause.  Add defaultmap(tofrom: scalar) clause.
+       * testsuite/libgomp.fortran/pr66199-2.f90: Adjust for linear clause
+       only allowed on the loop iterator.
+       * testsuite/libgomp.fortran/target4.f90 (foo): Add map(t) clause.
+       * testsuite/libgomp.fortran/taskloop2.f90: New test.
+       * testsuite/libgomp.fortran/taskloop4.f90: New test.
+       * testsuite/libgomp.fortran/doacross1.f90: New test.
+       * testsuite/libgomp.fortran/doacross3.f90: New test.
+       * testsuite/libgomp.fortran/taskloop1.f90: New test.
+       * testsuite/libgomp.fortran/taskloop3.f90: New test.
+       * testsuite/libgomp.fortran/doacross2.f90: New test.
+       * testsuite/libgomp.c/doacross-1.c (main): Add missing
+       #pragma omp atomic read.
+       * testsuite/libgomp.c/doacross-2.c (main): Likewise.
+       * testsuite/libgomp.c/doacross-3.c (main): Likewise.
+
+2016-11-02  Cesar Philippidis  <cesar@codesourcery.com>
+           Nathan Sidwell  <nathan@acm.org>
+
+       * plugin/plugin-nvptx.c (nvptx_exec): Interrogate board attributes
+       to determine default geometry.
+       * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Set gang
+       dimension.
+
+2016-11-01  Jakub Jelinek  <jakub@redhat.com>
+
+       * hashtab.h: Use standard GPLv3 with runtime exception
+       boilerplate.
+
+2016-10-27  Aldy Hernandez  <aldyh@redhat.com>
+
+       * oacc-init.c (goacc_new_thread): Use sizeof of the appropriate
+       size when allocating new thread.
+
+2016-09-14  Marek Polacek  <polacek@redhat.com>
+
+       * testsuite/libgomp.c++/atomic-3.C: Use -Wno-deprecated.
+
+2016-08-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/71014
+       * testsuite/libgomp.fortran/pr71014.f90: New test.
+
+2016-08-18  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       PR middle-end/70895
+       * testsuite/libgomp.oacc-fortran/reduction-7.f90: Add explicit
+       firstprivate clauses.
+       * testsuite/libgomp.oacc-fortran/reduction-6.f90: Remove explicit
+       copy clauses.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-flt.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-dbl.c: Likewise.
+
+2016-08-14  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       PR fortran/70598
+       * testsuite/libgomp.oacc-fortran/host_data-1.f90: New test.
+
+2016-08-08  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/58706
+       * testsuite/libgomp.c++/pr58706.C: New test.
+
+2016-08-04  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c++/routine-1-auto.C: New file.
+       * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Likewise.
+       * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
+       Likewise.
+       * testsuite/libgomp.oacc-c++/routine-1-template.C: Likewise.
+       * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C:
+       Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Adjust.
+
+       * testsuite/libgomp.oacc-c-c++-common/crash-1.c: Make it a "link"
+       test, and don't hardcode -O0.
+
+2016-08-03  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/crash-1.c: New.
+
+2016-07-15  Cesar Philippidis  <cesar@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/zero_length_subarrays.c: New
+       test.
+
+2016-07-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR middle-end/71734
+       * testsuite/libgomp.fortran/pr71734-1.f90: New test.
+       * testsuite/libgomp.fortran/pr71734-2.f90: Likewise.
+
+2016-07-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/71717
+       * testsuite/libgomp.fortran/associate3.f90: New test.
+
+2016-06-17  Jakub Jelinek  <jakub@redhat.com>
+
+       * testsuite/libgomp.c++/target-21.C: New test.
+
+2016-06-16  Jakub Jelinek  <jakub@redhat.com>
+
+       * testsuite/libgomp.c++/target-20.C: New test.
+
+2016-06-10  Thomas Schwinge  <thomas@codesourcery.com>
+           Cesar Philippidis  <cesar@codesourcery.com>
+
+       PR middle-end/71373
+       * libgomp.oacc-c/nested-function-1.c: New file.
+       * libgomp.oacc-c/nested-function-2.c: Likewise.
+       * libgomp.oacc-fortran/nested-function-1.f90: Likewise.
+       * libgomp.oacc-fortran/nested-function-2.f90: Likewise.
+       * libgomp.oacc-fortran/nested-function-3.f90: Likewise.
+
+2016-06-10  Thomas Schwinge  <thomas@codesourcery.com>
+
+       PR c/71381
+       * testsuite/libgomp.oacc-c-c++-common/cache-1.c: #include
+       "../../../gcc/testsuite/c-c++-common/goacc/cache-1.c".
+       * testsuite/libgomp.oacc-fortran/cache-1.f95: New file.
+
+2016-06-03  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       * testsuite/libgomp.oacc-fortran/reduction-8.f90: New testcase.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-8.c: New testcase.
+
+2016-06-01  Cesar Philippidis  <cesar@codesourcery.com>
+
+       PR c/70688
+       * testsuite/libgomp.oacc-c-c++-common/pr70688.c: New file.
+
+2016-05-26  Jakub Jelinek  <jakub@redhat.com>
+
+       * testsuite/libgomp.c/doacross-1.c (main): Use schedule(static)
+       instead of invalid schedule(static, 0).
+       * testsuite/libgomp.c/doacross-2.c (main): Likewise.
+
+2016-05-26  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       * oacc-plugin.h (GOMP_PLUGIN_async_unmap_vars): Add int parameter.
+       * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Add 'int async'
+       parameter, use to set async stream around call to gomp_unmap_vars,
+       call gomp_unmap_vars() with 'do_copyfrom' set to true.
+       * plugin/plugin-nvptx.c (struct ptx_event): Add 'int val' field.
+       (event_gc): Adjust event handling loop, collect PTX_EVT_ASYNC_CLEANUP
+       events and call GOMP_PLUGIN_async_unmap_vars() for each of them.
+       (event_add): Add int parameter, initialize 'val' field when
+       adding new ptx_event struct.
+       (nvptx_evec): Adjust event_add() call arguments.
+       (nvptx_host2dev): Likewise.
+       (nvptx_dev2host): Likewise.
+       (nvptx_wait_async): Likewise.
+       (nvptx_wait_all_async): Likewise.
+       (GOMP_OFFLOAD_openacc_register_async_cleanup): Add async parameter,
+       pass to event_add() call.
+       * oacc-host.c (host_openacc_register_async_cleanup): Add 'int async'
+       parameter.
+       * oacc-mem.c (gomp_acc_remove_pointer): Adjust async case to
+       call openacc.register_async_cleanup_func() hook.
+       * oacc-parallel.c (GOACC_parallel_keyed): Likewise.
+       * target.c (gomp_copy_from_async): Delete function.
+       (gomp_map_vars): Remove async_refcount.
+       (gomp_unmap_vars): Likewise.
+       (gomp_load_image_to_device): Likewise.
+       (omp_target_associate_ptr): Likewise.
+       * libgomp.h (struct splay_tree_key_s): Remove async_refcount.
+       (acc_dispatch_t.register_async_cleanup_func): Add int parameter.
+       (gomp_copy_from_async): Remove.
+
+2016-05-26  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       * target.c (gomp_device_copy): New function.
+       (gomp_copy_host2dev): Likewise.
+       (gomp_copy_dev2host): Likewise.
+       (gomp_free_device_memory): Likewise.
+       (gomp_map_vars_existing): Adjust to call gomp_copy_host2dev.
+       (gomp_map_pointer): Likewise.
+       (gomp_map_vars): Adjust to call gomp_copy_host2dev, handle
+       NULL value from alloc_func plugin hook.
+       (gomp_unmap_tgt): Adjust to call gomp_free_device_memory.
+       (gomp_copy_from_async): Adjust to call gomp_copy_dev2host.
+       (gomp_unmap_vars): Likewise.
+       (gomp_update): Adjust to call gomp_copy_dev2host and
+       gomp_copy_host2dev functions.
+       (gomp_unload_image_from_device): Handle false value from
+       unload_image_func plugin hook.
+       (gomp_init_device): Handle false value from init_device_func
+       plugin hook.
+       (gomp_exit_data): Adjust to call gomp_copy_dev2host.
+       (omp_target_free): Adjust to call gomp_free_device_memory.
+       (omp_target_memcpy): Handle return values from host2dev_func,
+       dev2host_func, and dev2dev_func plugin hooks.
+       (omp_target_memcpy_rect_worker): Likewise.
+       (gomp_target_fini): Handle false value from fini_device_func
+       plugin hook.
+       * libgomp.h (struct gomp_device_descr): Adjust return type of
+       init_device_func, fini_device_func, unload_image_func, free_func,
+       dev2host_func,host2dev_func, and dev2dev_func plugin hooks to 'bool'.
+       * oacc-init.c (acc_shutdown_1): Handle false value from
+       fini_device_func plugin hook.
+       * oacc-host.c (host_init_device): Change return type to bool.
+       (host_fini_device): Likewise.
+       (host_unload_image): Likewise.
+       (host_free): Likewise.
+       (host_dev2host): Likewise.
+       (host_host2dev): Likewise.
+       * oacc-mem.c (acc_free): Handle plugin hook fatal error case.
+       (acc_memcpy_to_device): Likewise.
+       (acc_memcpy_from_device): Likewise.
+       (delete_copyout): Add libfnname parameter, handle free_func
+       hook fatal error case.
+       (acc_delete): Adjust delete_copyout call.
+       (acc_copyout): Likewise.
+       (update_dev_host): Move gomp_mutex_unlock to after
+       host2dev/dev2host hook calls.
+
+       * plugin/plugin-hsa.c (hsa_warn): Adjust 'hsa_error' local variable
+       to 'hsa_error_msg', for clarity.
+       (hsa_fatal): Likewise.
+       (hsa_error): New function.
+       (init_hsa_context): Change return type to bool, adjust to return
+       false on error.
+       (GOMP_OFFLOAD_get_num_devices): Adjust to handle init_hsa_context
+       return value.
+       (GOMP_OFFLOAD_init_device): Change return type to bool, adjust to
+       return false on error.
+       (get_agent_info): Adjust to return NULL on error.
+       (destroy_hsa_program): Change return type to bool, adjust to
+       return false on error.
+       (GOMP_OFFLOAD_load_image): Adjust to return -1 on error.
+       (destroy_module): Change return type to bool, adjust to
+       return false on error.
+       (GOMP_OFFLOAD_unload_image): Likewise.
+       (GOMP_OFFLOAD_fini_device): Likewise.
+       (GOMP_OFFLOAD_alloc): Change to return NULL when called.
+       (GOMP_OFFLOAD_free): Change to return false when called.
+       (GOMP_OFFLOAD_dev2host): Likewise.
+       (GOMP_OFFLOAD_host2dev): Likewise.
+       (GOMP_OFFLOAD_dev2dev): Likewise.
+
+       * plugin/plugin-nvptx.c (CUDA_CALL_ERET): New convenience macro.
+       (CUDA_CALL): Likewise.
+       (CUDA_CALL_ASSERT): Likewise.
+       (map_init): Change return type to bool, use CUDA_CALL* macros.
+       (map_fini): Likewise.
+       (init_streams_for_device): Change return type to bool, adjust
+       call to map_init.
+       (fini_streams_for_device): Change return type to bool, adjust
+       call to map_fini.
+       (select_stream_for_async): Release stream_lock before calls to
+       GOMP_PLUGIN_fatal, adjust call to map_init.
+       (nvptx_init): Use CUDA_CALL* macros.
+       (nvptx_attach_host_thread_to_device): Change return type to bool,
+       use CUDA_CALL* macros.
+       (nvptx_open_device): Use CUDA_CALL* macros.
+       (nvptx_close_device): Change return type to bool, use CUDA_CALL*
+       macros.
+       (nvptx_get_num_devices): Use CUDA_CALL* macros.
+       (link_ptx): Change return type to bool, use CUDA_CALL* macros.
+       (nvptx_exec): Use CUDA_CALL* macros.
+       (nvptx_alloc): Use CUDA_CALL* macros.
+       (nvptx_free): Change return type to bool, use CUDA_CALL* macros.
+       (nvptx_host2dev): Likewise.
+       (nvptx_dev2host): Likewise.
+       (nvptx_wait): Use CUDA_CALL* macros.
+       (nvptx_wait_async): Likewise.
+       (nvptx_wait_all): Likewise.
+       (nvptx_wait_all_async): Likewise.
+       (nvptx_set_cuda_stream): Adjust order of stream_lock acquire,
+       use CUDA_CALL* macros, adjust call to map_fini.
+       (GOMP_OFFLOAD_init_device): Change return type to bool,
+       adjust code accordingly.
+       (GOMP_OFFLOAD_fini_device): Likewise.
+       (GOMP_OFFLOAD_load_image): Adjust calls to
+       nvptx_attach_host_thread_to_device/link_ptx to handle errors,
+       use CUDA_CALL* macros.
+       (GOMP_OFFLOAD_unload_image): Change return type to bool, adjust
+       return code.
+       (GOMP_OFFLOAD_alloc): Adjust calls to code to handle error return.
+       (GOMP_OFFLOAD_free): Change return type to bool, adjust calls to
+       handle error return.
+       (GOMP_OFFLOAD_dev2host): Likewise.
+       (GOMP_OFFLOAD_host2dev): Likewise.
+       (GOMP_OFFLOAD_openacc_register_async_cleanup): Use CUDA_CALL* macros.
+       (GOMP_OFFLOAD_openacc_create_thread_data): Likewise.
+
+2016-05-24  Cesar Philippidis  <cesar@codesourcery.com>
+
+       * oacc-mem.c (acc_malloc): Update handling of shared-memory targets.
+       (acc_free): Likewise.
+       (acc_memcpy_to_device): Likewise.
+       (acc_memcpy_from_device): Likewise.
+       (acc_deviceptr): Likewise.
+       (acc_hostptr): Likewise.
+       (acc_is_present): Likewise.
+       (acc_map_data): Likewise.
+       (acc_unmap_data): Likewise.
+       (present_create_copy): Likewise.
+       (delete_copyout): Likewise.
+       (update_dev_host): Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Remove xfail.
+       * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/data-2.c: Adjust test.
+       * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Adjust test so that
+       it only runs on nvptx targets.
+       * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-15.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-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-24.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-25.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-30.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/lib-34.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.
+
+2016-05-23  Martin Jambor  <mjambor@suse.cz>
+
+       * testsuite/libgomp.hsa.c/switch-sbr-2.c: New test.
+
+2016-05-17  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       * oacc-init.c (acc_init): Remove !cached_base_dev condition on call
+       to gomp_init_targets_once.
+       (acc_set_device_type): Remove !cached_base_dev condition on call to
+       gomp_init_targets_once, move call to before acc_device_lock acquire,
+       to avoid deadlock.
+       (acc_get_device_num): Remove !cached_base_dev condition on call to
+       gomp_init_targets_once.
+       (acc_set_device_num): Likewise.
+
+2016-05-16  Martin Jambor  <mjambor@suse.cz>
+
+        * testsuite/libgomp.hsa.c/complex-align-2.c: New test.
+
+2016-05-02  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust
+       expected partitioning.
+
+2016-04-29  Cesar Philippidis  <cesar@codesourcery.com>
+
+       PR middle-end/70626
+       * testsuite/libgomp.oacc-c++/template-reduction.C: Adjust test.
+       * testsuite/libgomp.oacc-c-c++-common/combined-reduction.c: New test.
+       * testsuite/libgomp.oacc-fortran/combined-reduction.f90: New test.
+
+2016-04-21  Alexander Monakov  <amonakov@ispras.ru>
+
+       * plugin/plugin-nvptx.c (map_fini): Make cuMemFreeHost error
+       non-fatal.
+
+2016-04-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/70680
+       * testsuite/libgomp.c/pr70680-1.c: New test.
+       * testsuite/libgomp.c/pr70680-2.c: New test.
+
+2016-04-14  Cesar Philippidis  <cesar@codesourcery.com>
+
+       * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Don't
+       pass parameter variables to subroutines.
+
+2016-04-14  Cesar Philippidis  <cesar@codesourcery.com>
+
+       PR middle-end/70643
+       * testsuite/libgomp.oacc-fortran/pr70643.f90: New test.
+
+2016-04-13  Cesar Philippidis  <cesar@codesourcery.com>
+
+       PR testsuite/68242
+       * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Adjust test.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
+
+2016-04-12  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * libgomp_g.h: Rename GOACC_parallel_keyd prototype to
+       GOACC_parallel_keyed, restore GOACC_parallel prototype, new
+       GOACC_declare prototype.
+
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c:
+       Merge this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gv-np-1.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c:
+       ... this file, and...
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c:
+       ... this file into...
+       * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: ... this
+       file.
+
+       * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
+       Make failure observable.
+
+2016-04-12  Jakub Jelinek  <jakub@redhat.com>
+
+       * libgomp.h (struct gomp_target_task): Remove firstprivate_copies
+       field.
+       * target.c (gomp_target_fallback_firstprivate,
+       gomp_target_unshare_firstprivate): Removed.
+       (GOMP_target_ext): Copy firstprivate vars into gomp_allocaed memory
+       before waiting for dependencies.
+       (gomp_target_task_fn): Don't copy firstprivate vars here.
+       * task.c (GOMP_PLUGIN_target_task_completion): Don't free
+       firstprivate_copies here.
+       (gomp_create_target_task): Don't initialize firstprivate_copies field.
+       * testsuite/libgomp.c/target-25.c (main): Use map (to:) instead of
+       explicit/implicit firstprivate.
+
+2016-04-08  Cesar Philippidis  <cesar@codesourcery.com>
+
+       PR lto/70289
+       PR ipa/70348
+       PR tree-optimization/70373
+       PR middle-end/70533
+       PR middle-end/70534
+       PR middle-end/70535
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c: New
+       test.
+       * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Add test
+       coverage.
+       * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/pr70289.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/pr70373.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Add test
+       coverage.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/reduction.h: New test.
+       * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: New test.
+       * testsuite/libgomp.oacc-fortran/pr70289.f90: New test.
+       * testsuite/libgomp.oacc-fortran/reduction-1.f90: Add test coverage.
+       * 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-5.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/reduction-7.f90: New test.
+
+2016-03-30  Thomas Schwinge  <thomas@codesourcery.com>
+           James Norris  <jnorris@codesourcery.com>
+           Nathan Sidwell  <nathan@codesourcery.com>
+           Julian Brown  <julian@codesourcery.com>
+           Cesar Philippidis  <cesar@codesourcery.com>
+           Chung-Lin Tang  <cltang@codesourcery.com>
+           Tom de Vries  <tom@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Update.
+       * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Likewise.
+       * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
+       XFAIL.
+       * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
+       Incorporate...
+       * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: ... this
+       file.
+       * testsuite/libgomp.oacc-c++/template-reduction.C: New file.
+       * testsuite/libgomp.oacc-c-c++-common/gang-static-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/kernels-loop-clauses.c:
+       Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
+       Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
+       * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90:
+       Likewise.
+       * testsuite/libgomp.oacc-fortran/pr68813.f90: Likewise.
+       * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Merge this
+       file...
+       * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: ..., and this
+       file into...
+       * testsuite/libgomp.oacc-c-c++-common/data-clauses.h: ... this new
+       file.  Update.
+       * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels.c: New
+       file.
+       * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel.c:
+       Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: Rename to...
+       * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c:
+       ... this new file.  Update.
+       * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: Rename to...
+       * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c:
+       ... this new file.  Update.
+       * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: New
+       file.  Incorporate...
+       * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c: ... this
+       file, and...
+       * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: ... this
+       file, and...
+       * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: ... this
+       file.
+       * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Remove file.
+
+2016-03-29  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c++/c++.exp [!lang_test_file_found]: Call
+       set-torture-options.
+
+2016-03-24  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/libgomp.oacc-c++/c++.exp: Set up torture testing, use
+       gcc-dg-runtest.
+       * testsuite/libgomp.oacc-c/c.exp: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: Specify
+       -fno-builtin-acc_on_device instead of -O0.
+       * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: Skip for
+       -O0.
+       * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c:
+       Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-2.c:
+       Don't specify -O2.
+       * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-3.c:
+       Likewise.
+       * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta.c:
+       Likewise.
+
+2016-03-24  Martin Liska  <mliska@suse.cz>
+
+       * plugin/plugin-hsa.c (packet_store_release): New function
+       that is taken from the HSA runtime manual.
+       (GOMP_OFFLOAD_run): Use the function.
+
+2016-03-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/70376
+       * testsuite/libgomp.c++/pr70376.C: New test.
+
+2016-03-23  Tom de Vries  <tom@codesourcery.com>
+
+       * testsuite/libgomp.oacc-fortran/reduction-2.f90: Add missing
+       initialization of lresult and lvresult.
+       * testsuite/libgomp.oacc-fortran/reduction-3.f90: Same.
+
+2016-03-23  James Norris  <jnorris@codesourcery.com>
+           Daichi Fukuoka <dc-fukuoka@sgi.com>
+
+       PR libgomp/69414
+       * oacc-mem.c (delete_copyout, update_dev_host): Fix device address.
+       * testsuite/libgomp.oacc-c-c++-common/update-1.c: Additional tests.
+       * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
+       * testsuite/libgomp.oacc-fortran/update-1.f90: New file.
+
+2016-03-23  Martin Liska  <mliska@suse.cz>
+
+       PR hsa/70337
+       * plugin/plugin-hsa.c (GOMP_OFFLOAD_run): Copy shadow
+       argument just in case a dispatched kernel uses that argument.
+
+2016-03-16  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Adjust to
+       -ftree-parallelize-loops/-fopenacc changes.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
+       Likewise.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
+       Likewise.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
+       Likewise.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
+       Likewise.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
+       * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
+
+2016-03-13  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * testsuite/lib/libgomp.exp (libgomp_init): Potentially append to
+       always_ld_library_path the path to libgcc_s.
+
+2016-03-10  Cesar Philippidis  <cesar@codesourcery.com>
+
+       PR testsuite/70009
+       * testsuite/libgomp.oacc-c-c++-common/vprop.c: Make test data signed.
+
+2016-03-09  Tom de Vries  <tom@codesourcery.com>
+
+       * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: New test.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Same.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
+       Same.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Same.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Same.
+       * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Same.
+       * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Same.
+
+2016-03-07  Martin Jambor  <mjambor@suse.cz>
+
+       * testsuite/lib/libgomp.exp
+       (check_effective_target_hsa_offloading_selected_nocache): New.
+       (check_effective_target_hsa_offloading_selected): Likewise.
+       * testsuite/libgomp.hsa.c/c.exp: Likewise.
+       * testsuite/libgomp.hsa.c/alloca-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
+       * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
+       * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
+       * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
+       * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
+       * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
+
+2016-03-07  Martin Jambor  <mjambor@suse.cz>
+
+       * testsuite/libgomp.c/examples-4/async_target-2.c: Only run on
+       non-shared memory accelerators.
+       * testsuite/libgomp.c/examples-4/device-1.c: Likewise.
+       * testsuite/libgomp.c/examples-4/target-5.c: Likewise.
+       * testsuite/libgomp.c/examples-4/target_data-6.c: Likewise.
+       * testsuite/libgomp.c/examples-4/target_data-7.c: Likewise.
+       * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
+       * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
+       * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
+       * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
+       * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
+
+2016-03-07  Martin Jambor  <mjambor@suse.cz>
+
+       * testsuite/lib/libgomp.exp (libgomp_init): Append -Wno-hsa to
+       ALWAYS_CFLAGS.
+
+2016-03-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR libgomp/69555
+       * testsuite/libgomp.c++/pr69555-1.C: New test.
+       * testsuite/libgomp.c++/pr69555-2.C: New test.
+
 2016-02-26  Keith McDaniel <k.allen.mcdaniel@gmail.com>
            Martin Jambor  <mjambor@suse.cz>
 
 
        Initial implementation and checkin.
 \f
-Copyright (C) 2005-2016 Free Software Foundation, Inc.
+Copyright (C) 2005-2017 Free Software Foundation, Inc.
 
 Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright