1. 17 Jan, 2017 2 commits
    • configfrag.ac: For --without-cuda-driver don't initialize CUDA_DRIVER_INCLUDE nor CUDA_DRIVER_LIB. · 2393d337
      	* 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.
      
      From-SVN: r244522
      Jakub Jelinek committed
    • re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) · 3c36aa6b
      	PR other/79046
      	* configure: Regenerated.
      config/
      	* acx.m4 (GCC_BASE_VER): New m4 function.
      	(ACX_TOOL_DIRS): Require GCC_BASE_VER, for
      	--with-gcc-major-version-only use just major number from BASE-VER.
      gcc/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
      	version from BASE-VER file.
      	(CFLAGS-gcc.o): Add -DBASEVER=$(BASEVER_s).
      	(gcc.o): Depend on $(BASEVER).
      	* common.opt (dumpfullversion): New option.
      	* gcc.c (driver_handle_option): Handle OPT_dumpfullversion.
      	* doc/invoke.texi: Document -dumpfullversion.
      	* doc/install.texi: Document --with-gcc-major-version-only.
      	* configure: Regenerated.
      libatomic/
      	* 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.
      libgomp/
      	* 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.
      libgcc/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
      	version from BASE-VER file.
      	* configure: Regenerated.
      libssp/
      	* 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.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      liboffloadmic/
      	* 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.
      	* aclocal.m4: Include ../config/acx.m4.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libquadmath/
      	* 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.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libmpx/
      	* 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.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libada/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
      	version from BASE-VER file.
      	* configure: Regenerated.
      lto-plugin/
      	* 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.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libitm/
      	* 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.
      fixincludes/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* configure: Regenerated.
      libcilkrts/
      	* 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.
      	* aclocal.m4: Include ../config/acx.m4.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libcc1/
      	* configure.ac: Add GCC_BASE_VER.  For --with-gcc-major-version-only
      	use just major number from BASE-VER.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libobjc/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* configure: Regenerated.
      libstdc++-v3/
      	* configure.ac: Add GCC_BASE_VER.
      	* fragment.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* po/Makefile.in: Regenerated.
      	* libsupc++/Makefile.in: Regenerated.
      	* testsuite/Makefile.in: Regenerated.
      	* src/Makefile.in: Regenerated.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      	* include/Makefile.in: Regenerated.
      	* doc/Makefile.in: Regenerated.
      	* python/Makefile.in: Regenerated.
      	* src/c++11/Makefile.in: Regenerated.
      	* src/c++98/Makefile.in: Regenerated.
      	* src/filesystem/Makefile.in: Regenerated.
      libvtv/
      	* 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.
      libsanitizer/
      	* 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.
      	* libbacktrace/Makefile.in: Regenerated.
      	* interception/Makefile.in: Regenerated.
      	* asan/Makefile.in: Regenerated.
      	* ubsan/Makefile.in: Regenerated.
      	* configure: Regenerated.
      	* sanitizer_common/Makefile.in: Regenerated.
      	* lsan/Makefile.in: Regenerated.
      	* Makefile.in: Regenerated.
      	* tsan/Makefile.in: Regenerated.
      libgfortran/
      	* 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.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      
      From-SVN: r244521
      Jakub Jelinek committed
  2. 30 Nov, 2016 2 commits
  3. 23 Nov, 2016 2 commits
    • OpenMP offloading to NVPTX: libgomp changes · 6103184e
      	* 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).
      
      Co-Authored-By: Dmitry Melnik <dm@ispras.ru>
      Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
      
      From-SVN: r242789
      Alexander Monakov committed
    • Remove build dependence on HSA run-time · b8d89b03
      2016-11-23  Martin Liska  <mliska@suse.cz>
                  Martin Jambor  <mjambor@suse.cz>
      
      gcc/
      	* doc/install.texi: Remove entry about --with-hsa-kmt-lib.
      
      libgomp/
      	* 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.
      
      
      
      Co-Authored-By: Martin Jambor <mjambor@suse.cz>
      
      From-SVN: r242749
      Martin Liska committed
  4. 15 Nov, 2016 1 commit
    • config-ml.in: Remove references to GCJ. · 84c1b9d3
      <toplevel>
      
      2016-11-15  Matthias Klose  <doko@ubuntu.com>
      
      	* config-ml.in: Remove references to GCJ.
      	* configure.ac: Likewise.
      	* configure: Regenerate.
      
      config/
      
      2016-11-15  Matthias Klose  <doko@ubuntu.com>
      
      	multi.m4: Don't set GCJ.
      
      gcc/
      
      2016-11-15  Matthias Klose  <doko@ubuntu.com>
      
      	* doc/install.texi: Remove references to gcj/libjava.
      	* doc/invoke.texi: Likewise.
      
      */ (where necessary)
      
      2016-11-15  Matthias Klose  <doko@ubuntu.com>
      
      	* configure: Regenerate.
      
      From-SVN: r242433
      Matthias Klose committed
  5. 02 Feb, 2016 3 commits
  6. 19 Jan, 2016 1 commit
    • Merge of HSA · b2b40051
      2016-01-19  Martin Jambor  <mjambor@suse.cz>
      	    Martin Liska  <mliska@suse.cz>
      	    Michael Matz <matz@suse.de>
      
      libgomp/
      	* plugin/Makefrag.am: Add HSA plugin requirements.
      	* plugin/configfrag.ac (HSA_RUNTIME_INCLUDE): New variable.
      	(HSA_RUNTIME_LIB): Likewise.
      	(HSA_RUNTIME_CPPFLAGS): Likewise.
      	(HSA_RUNTIME_INCLUDE): New substitution.
      	(HSA_RUNTIME_LIB): Likewise.
      	(HSA_RUNTIME_LDFLAGS): Likewise.
      	(hsa-runtime): New configure option.
      	(hsa-runtime-include): Likewise.
      	(hsa-runtime-lib): Likewise.
      	(PLUGIN_HSA): New substitution variable.
      	Fill HSA_RUNTIME_INCLUDE and HSA_RUNTIME_LIB according to the new
      	configure options.
      	(PLUGIN_HSA_CPPFLAGS): Likewise.
      	(PLUGIN_HSA_LDFLAGS): Likewise.
      	(PLUGIN_HSA_LIBS): Likewise.
      	Check that we have access to HSA run-time.
      	* libgomp-plugin.h (offload_target_type): New element
      	OFFLOAD_TARGET_TYPE_HSA.
      	* libgomp.h (gomp_target_task): New fields firstprivate_copies and
      	args.
      	(bool gomp_create_target_task): Updated.
      	(gomp_device_descr): Extra parameter of run_func and async_run_func,
      	new field can_run_func.
      	* libgomp_g.h (GOMP_target_ext): Update prototype.
      	* oacc-host.c (host_run): Added a new parameter args.
      	* target.c (calculate_firstprivate_requirements): New function.
      	(copy_firstprivate_data): Likewise.
      	(gomp_target_fallback_firstprivate): Use them.
      	(gomp_target_unshare_firstprivate): New function.
      	(gomp_get_target_fn_addr): Allow returning NULL for shared memory
      	devices.
      	(GOMP_target): Do host fallback for all shared memory devices.  Do not
      	pass any args to plugins.
      	(GOMP_target_ext): Introduce device-specific argument parameter args.
      	Allow host fallback if device shares memory.  Do not remap data if
      	device has shared memory.
      	(gomp_target_task_fn): Likewise.  Also treat shared memory devices
      	like host fallback for mappings.
      	(GOMP_target_data): Treat shared memory devices like host fallback.
      	(GOMP_target_data_ext): Likewise.
      	(GOMP_target_update): Likewise.
      	(GOMP_target_update_ext): Likewise.  Also pass NULL as args to
      	gomp_create_target_task.
      	(GOMP_target_enter_exit_data): Likewise.
      	(omp_target_alloc): Treat shared memory devices like host fallback.
      	(omp_target_free): Likewise.
      	(omp_target_is_present): Likewise.
      	(omp_target_memcpy): Likewise.
      	(omp_target_memcpy_rect): Likewise.
      	(omp_target_associate_ptr): Likewise.
      	(gomp_load_plugin_for_device): Also load can_run.
      	* task.c (GOMP_PLUGIN_target_task_completion): Free
      	firstprivate_copies.
      	(gomp_create_target_task): Accept new argument args and store it to
      	ttask.
      	* plugin/plugin-hsa.c: New file.
      
      gcc/
      	* Makefile.in (OBJS): Add new source files.
      	(GTFILES): Add hsa.c.
      	* common.opt (disable_hsa): New variable.
      	(-Whsa): New warning.
      	* config.in (ENABLE_HSA): New.
      	* configure.ac: Treat hsa differently from other accelerators.
      	(OFFLOAD_TARGETS): Define ENABLE_OFFLOADING according to
      	$enable_offloading.
      	(ENABLE_HSA): Define ENABLE_HSA according to $enable_hsa.
      	* doc/install.texi (Configuration): Document --with-hsa-runtime,
      	--with-hsa-runtime-include, --with-hsa-runtime-lib and
      	--with-hsa-kmt-lib.
      	* doc/invoke.texi (-Whsa): Document.
      	(hsa-gen-debug-stores): Likewise.
      	* lto-wrapper.c (compile_images_for_offload_targets): Do not attempt
      	to invoke offload compiler for hsa acclerator.
      	* opts.c (common_handle_option): Determine whether HSA offloading
      	should be performed.
      	* params.def (PARAM_HSA_GEN_DEBUG_STORES): New parameter.
      	* builtin-types.def (BT_FN_VOID_UINT_PTR_INT_PTR): New.
      	(BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_INT_INT): Removed.
      	(BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_PTR): New.
      	* gimple-low.c (lower_stmt): Also handle GIMPLE_OMP_GRID_BODY.
      	* gimple-pretty-print.c (dump_gimple_omp_for): Also handle
      	GF_OMP_FOR_KIND_GRID_LOOP.
      	(dump_gimple_omp_block): Also handle GIMPLE_OMP_GRID_BODY.
      	(pp_gimple_stmt_1): Likewise.
      	* gimple-walk.c (walk_gimple_stmt): Likewise.
      	* gimple.c (gimple_build_omp_grid_body): New function.
      	(gimple_copy): Also handle GIMPLE_OMP_GRID_BODY.
      	* gimple.def (GIMPLE_OMP_GRID_BODY): New.
      	* gimple.h (enum gf_mask): Added GF_OMP_PARALLEL_GRID_PHONY,
      	GF_OMP_FOR_KIND_GRID_LOOP, GF_OMP_FOR_GRID_PHONY and
      	GF_OMP_TEAMS_GRID_PHONY.
      	(gimple_statement_omp_single_layout): Updated comments.
      	(gimple_build_omp_grid_body): New function.
      	(gimple_has_substatements): Also handle GIMPLE_OMP_GRID_BODY.
      	(gimple_omp_for_grid_phony): New function.
      	(gimple_omp_for_set_grid_phony): Likewise.
      	(gimple_omp_parallel_grid_phony): Likewise.
      	(gimple_omp_parallel_set_grid_phony): Likewise.
      	(gimple_omp_teams_grid_phony): Likewise.
      	(gimple_omp_teams_set_grid_phony): Likewise.
      	(gimple_return_set_retbnd): Also handle GIMPLE_OMP_GRID_BODY.
      	* omp-builtins.def (BUILT_IN_GOMP_OFFLOAD_REGISTER): New.
      	(BUILT_IN_GOMP_OFFLOAD_UNREGISTER): Likewise.
      	(BUILT_IN_GOMP_TARGET): Updated type.
      	* omp-low.c: Include symbol-summary.h, hsa.h and params.h.
      	(adjust_for_condition): New function.
      	(get_omp_for_step_from_incr): Likewise.
      	(extract_omp_for_data): Moved parts to adjust_for_condition and
      	get_omp_for_step_from_incr.
      	(build_outer_var_ref): Handle GIMPLE_OMP_GRID_BODY.
      	(fixup_child_record_type): Bail out if receiver_decl is NULL.
      	(scan_sharing_clauses): Handle OMP_CLAUSE__GRIDDIM_.
      	(scan_omp_parallel): Do not create child functions for phony
      	constructs.
      	(check_omp_nesting_restrictions): Handle GIMPLE_OMP_GRID_BODY.
      	(scan_omp_1_op): Checking assert we are not remapping to
      	ERROR_MARK.  Also also handle GIMPLE_OMP_GRID_BODY.
      	(parallel_needs_hsa_kernel_p): New function.
      	(expand_parallel_call): Register apprpriate parallel child
      	functions as HSA kernels.
      	(grid_launch_attributes_trees): New type.
      	(grid_attr_trees): New variable.
      	(grid_create_kernel_launch_attr_types): New function.
      	(grid_insert_store_range_dim): Likewise.
      	(grid_get_kernel_launch_attributes): Likewise.
      	(get_target_argument_identifier_1): Likewise.
      	(get_target_argument_identifier): Likewise.
      	(get_target_argument_value): Likewise.
      	(push_target_argument_according_to_value): Likewise.
      	(get_target_arguments): Likewise.
      	(expand_omp_target): Call get_target_arguments instead of looking
      	up for teams and thread limit.
      	(grid_expand_omp_for_loop): New function.
      	(grid_arg_decl_map): New type.
      	(grid_remap_kernel_arg_accesses): New function.
      	(grid_expand_target_kernel_body): New function.
      	(expand_omp): Call it.
      	(lower_omp_for): Do not emit phony constructs.
      	(lower_omp_taskreg): Do not emit phony constructs but create for them
      	a temporary variable receiver_decl.
      	(lower_omp_taskreg): Do not emit phony constructs.
      	(lower_omp_teams): Likewise.
      	(lower_omp_grid_body): New function.
      	(lower_omp_1): Call it.
      	(grid_reg_assignment_to_local_var_p): New function.
      	(grid_seq_only_contains_local_assignments): Likewise.
      	(grid_find_single_omp_among_assignments_1): Likewise.
      	(grid_find_single_omp_among_assignments): Likewise.
      	(grid_find_ungridifiable_statement): Likewise.
      	(grid_target_follows_gridifiable_pattern): Likewise.
      	(grid_remap_prebody_decls): Likewise.
      	(grid_copy_leading_local_assignments): Likewise.
      	(grid_process_kernel_body_copy): Likewise.
      	(grid_attempt_target_gridification): Likewise.
      	(grid_gridify_all_targets_stmt): Likewise.
      	(grid_gridify_all_targets): Likewise.
      	(execute_lower_omp): Call grid_gridify_all_targets.
      	(make_gimple_omp_edges): Handle GIMPLE_OMP_GRID_BODY.
      	* tree-core.h (omp_clause_code): Added OMP_CLAUSE__GRIDDIM_.
      	(tree_omp_clause): Added union field dimension.
      	* tree-pretty-print.c (dump_omp_clause): Handle OMP_CLAUSE__GRIDDIM_.
      	* tree.c (omp_clause_num_ops): Added number of arguments of
      	OMP_CLAUSE__GRIDDIM_.
      	(omp_clause_code_name): Added name of OMP_CLAUSE__GRIDDIM_.
      	(walk_tree_1): Handle OMP_CLAUSE__GRIDDIM_.
      	* tree.h (OMP_CLAUSE_GRIDDIM_DIMENSION): New.
      	(OMP_CLAUSE_SET_GRIDDIM_DIMENSION): Likewise.
      	(OMP_CLAUSE_GRIDDIM_SIZE): Likewise.
      	(OMP_CLAUSE_GRIDDIM_GROUP): Likewise.
      	* passes.def: Schedule pass_ipa_hsa and pass_gen_hsail.
      	* tree-pass.h (make_pass_gen_hsail): Declare.
      	(make_pass_ipa_hsa): Likewise.
      	* ipa-hsa.c: New file.
      	* lto-section-in.c (lto_section_name): Add hsa section name.
      	* lto-streamer.h (lto_section_type): Add hsa section.
      	* timevar.def (TV_IPA_HSA): New.
              * hsa-brig-format.h: New file.
      	* hsa-brig.c: New file.
      	* hsa-dump.c: Likewise.
      	* hsa-gen.c: Likewise.
      	* hsa.c: Likewise.
      	* hsa.h: Likewise.
      	* toplev.c (compile_file): Call hsa_output_brig.
      	* hsa-regalloc.c: New file.
      
      gcc/fortran/
      	* types.def (BT_FN_VOID_UINT_PTR_INT_PTR): New.
      	(BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_INT_INT): Removed.
      	(BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_PTR): New.
      
      gcc/lto/
      	* lto-partition.c: Include "hsa.h"
      	(add_symbol_to_partition_1): Put hsa implementations into the
      	same partition as host implementations.
      
      liboffloadmic/
      	* plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_async_run): New
      	unused parameter.
      	(GOMP_OFFLOAD_run): Likewise.
      
      include/
      	* gomp-constants.h (GOMP_DEVICE_HSA): New macro.
      	(GOMP_VERSION_HSA): Likewise.
      	(GOMP_TARGET_ARG_DEVICE_MASK): Likewise.
      	(GOMP_TARGET_ARG_DEVICE_ALL): Likewise.
      	(GOMP_TARGET_ARG_SUBSEQUENT_PARAM): Likewise.
      	(GOMP_TARGET_ARG_ID_MASK): Likewise.
      	(GOMP_TARGET_ARG_NUM_TEAMS): Likewise.
      	(GOMP_TARGET_ARG_THREAD_LIMIT): Likewise.
      	(GOMP_TARGET_ARG_VALUE_SHIFT): Likewise.
      	(GOMP_TARGET_ARG_HSA_KERNEL_ATTRIBUTES): Likewise.
      
      From-SVN: r232549
      Martin Jambor committed
  7. 26 Nov, 2015 2 commits
  8. 03 Sep, 2015 1 commit
    • [gomp] Add RTEMS configuration · 13c41b2e
      libgomp/ChangeLog
      
      	* 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.
      
      From-SVN: r227440
      Sebastian Huber committed
  9. 10 Aug, 2015 2 commits
    • [PR libgomp/65742, PR middle-end/66332] libgomp: Remove plugin for non-shared memory host execution · b97e78b7
      	gcc/
      	* builtins.c (expand_builtin_acc_on_device) [ACCEL_COMPILER]: Emit
      	open-coded sequence.
      	* omp-low.c (oacc_process_reduction_data): Remove handline of
      	GOMP_DEVICE_HOST_NONSHM.
      	gcc/testsuite/
      	* c-c++-common/goacc/acc_on_device-2.c: Remove XFAIL for C.
      	include/
      	* gomp-constants.c (GOMP_DEVICE_HOST_NONSHM): Remove.
      	libgomp/
      	* 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.
      
      From-SVN: r226763
      Thomas Schwinge committed
    • Empty libgomp for nvptx · 44a7d18d
      	* configure.ac (noconfigdirs): Don't add "target-libgomp" for target
      	nvptx*-*-*.
      	* configure: Regenerate.
      	libgomp/
      	* 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*-*-*.
      
      Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
      
      From-SVN: r226760
      Thomas Schwinge committed
  10. 23 Jun, 2015 1 commit
  11. 13 May, 2015 1 commit
    • libgomp: Bump to automake 1.11.6 · 55fba601
      2015-05-13  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
      
      	* Makefile.in: Regenerated with automake-1.11.6.
      	* aclocal.m4: Likewise.
      	* config.h.in: Likewise.
      	* configure: Likewise.
      	* testsuite/Makefile.in: Likewise.
      
      From-SVN: r223143
      Michael Haubenwallner committed
  12. 13 Mar, 2015 1 commit
    • libgomp: Add RTEMS support · cd93945d
      libgomp/ChangeLog
      
      	* configure.tgt (*-*-rtems*): Use local-exec TLS model.
      	* configure.ac (*-*-rtems*): Assume Pthread is supported.
      	(pthread.h): Check for this header file.
      	* configure: Regenerate.
      
      From-SVN: r221415
      Sebastian Huber committed
  13. 15 Jan, 2015 1 commit
    • Merge current set of OpenACC changes from gomp-4_0-branch. · 41dbbb37
      	contrib/
      	* gcc_update (files_and_dependencies): Update rules for new
      	libgomp/plugin/Makefrag.am and libgomp/plugin/configfrag.ac files.
      	gcc/
      	* builtin-types.def (BT_FN_VOID_INT_INT_VAR)
      	(BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
      	(BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
      	New function types.
      	* builtins.c: Include "gomp-constants.h".
      	(expand_builtin_acc_on_device): New function.
      	(expand_builtin, is_inexpensive_builtin): Handle
      	BUILT_IN_ACC_ON_DEVICE.
      	* builtins.def (DEF_GOACC_BUILTIN, DEF_GOACC_BUILTIN_COMPILER):
      	New macros.
      	* cgraph.c (cgraph_node::create): Consider flag_openacc next to
      	flag_openmp.
      	* config.gcc <nvptx-*> (tm_file): Add nvptx/offload.h.
      	<*-intelmic-* | *-intelmicemul-*> (tm_file): Add
      	i386/intelmic-offload.h.
      	* gcc.c (LINK_COMMAND_SPEC, GOMP_SELF_SPECS): For -fopenacc, link
      	to libgomp and its dependencies.
      	* config/arc/arc.h (LINK_COMMAND_SPEC): Likewise.
      	* config/darwin.h (LINK_COMMAND_SPEC_A): Likewise.
      	* config/i386/mingw32.h (GOMP_SELF_SPECS): Likewise.
      	* config/ia64/hpux.h (LIB_SPEC): Likewise.
      	* config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
      	* config/pa/pa64-hpux.h (LIB_SPEC): Likewise.
      	* doc/generic.texi: Update for OpenACC changes.
      	* doc/gimple.texi: Likewise.
      	* doc/invoke.texi: Likewise.
      	* doc/sourcebuild.texi: Likewise.
      	* gimple-pretty-print.c (dump_gimple_omp_for): Handle
      	GF_OMP_FOR_KIND_OACC_LOOP.
      	(dump_gimple_omp_target): Handle GF_OMP_TARGET_KIND_OACC_KERNELS,
      	GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_DATA,
      	GF_OMP_TARGET_KIND_OACC_UPDATE,
      	GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA.
      	Dump more data.
      	* gimple.c: Update comments for OpenACC changes.
      	* gimple.def: Likewise.
      	* gimple.h: Likewise.
      	(enum gf_mask): Add GF_OMP_FOR_KIND_OACC_LOOP,
      	GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_KERNELS,
      	GF_OMP_TARGET_KIND_OACC_DATA, GF_OMP_TARGET_KIND_OACC_UPDATE,
      	GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA.
      	(gimple_omp_for_cond, gimple_omp_for_set_cond): Sort in the
      	appropriate place.
      	(is_gimple_omp_oacc, is_gimple_omp_offloaded): New functions.
      	* gimplify.c: Include "gomp-constants.h".
      	Update comments for OpenACC changes.
      	(is_gimple_stmt): Handle OACC_PARALLEL, OACC_KERNELS, OACC_DATA,
      	OACC_HOST_DATA, OACC_DECLARE, OACC_UPDATE, OACC_ENTER_DATA,
      	OACC_EXIT_DATA, OACC_CACHE, OACC_LOOP.
      	(gimplify_scan_omp_clauses, gimplify_adjust_omp_clauses): Handle
      	OMP_CLAUSE__CACHE_, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT,
      	OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS,
      	OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER,
      	OMP_CLAUSE_VECTOR, OMP_CLAUSE_DEVICE_RESIDENT,
      	OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_INDEPENDENT, OMP_CLAUSE_AUTO,
      	OMP_CLAUSE_SEQ.
      	(gimplify_adjust_omp_clauses_1, gimplify_adjust_omp_clauses): Use
      	GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.  Use
      	OMP_CLAUSE_SET_MAP_KIND.
      	(gimplify_oacc_cache): New function.
      	(gimplify_omp_for): Handle OACC_LOOP.
      	(gimplify_omp_workshare): Handle OACC_KERNELS, OACC_PARALLEL,
      	OACC_DATA.
      	(gimplify_omp_target_update): Handle OACC_ENTER_DATA,
      	OACC_EXIT_DATA, OACC_UPDATE.
      	(gimplify_expr): Handle OACC_LOOP, OACC_CACHE, OACC_HOST_DATA,
      	OACC_DECLARE, OACC_KERNELS, OACC_PARALLEL, OACC_DATA,
      	OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_UPDATE.
      	(gimplify_body): Consider flag_openacc next to flag_openmp.
      	* lto-streamer-out.c: Include "gomp-constants.h".
      	* omp-builtins.def (BUILT_IN_ACC_GET_DEVICE_TYPE)
      	(BUILT_IN_GOACC_DATA_START, BUILT_IN_GOACC_DATA_END)
      	(BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_PARALLEL)
      	(BUILT_IN_GOACC_UPDATE, BUILT_IN_GOACC_WAIT)
      	(BUILT_IN_GOACC_GET_THREAD_NUM, BUILT_IN_GOACC_GET_NUM_THREADS)
      	(BUILT_IN_ACC_ON_DEVICE): New builtins.
      	* omp-low.c: Include "gomp-constants.h".
      	Update comments for OpenACC changes.
      	(struct omp_context): Add reduction_map, gwv_below, gwv_this
      	members.
      	(extract_omp_for_data, use_pointer_for_field, install_var_field)
      	(new_omp_context, delete_omp_context, scan_sharing_clauses)
      	(create_omp_child_function, scan_omp_for, scan_omp_target)
      	(check_omp_nesting_restrictions, lower_reduction_clauses)
      	(build_omp_regions_1, diagnose_sb_0, make_gimple_omp_edges):
      	Update for OpenACC changes.
      	(scan_sharing_clauses): Handle OMP_CLAUSE_NUM_GANGS:
      	OMP_CLAUSE_NUM_WORKERS: OMP_CLAUSE_VECTOR_LENGTH,
      	OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT, OMP_CLAUSE_GANG,
      	OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, OMP_CLAUSE_DEVICE_RESIDENT,
      	OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE__CACHE_, OMP_CLAUSE_INDEPENDENT,
      	OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ.  Use GOMP_MAP_* instead of
      	OMP_CLAUSE_MAP_*.
      	(expand_omp_for_static_nochunk, expand_omp_for_static_chunk):
      	Handle GF_OMP_FOR_KIND_OACC_LOOP.
      	(expand_omp_target, lower_omp_target): Handle
      	GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_KERNELS,
      	GF_OMP_TARGET_KIND_OACC_UPDATE,
      	GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA,
      	GF_OMP_TARGET_KIND_OACC_DATA.
      	(pass_expand_omp::execute, execute_lower_omp)
      	(pass_diagnose_omp_blocks::gate): Consider flag_openacc next to
      	flag_openmp.
      	(offload_symbol_decl): New variable.
      	(oacc_get_reduction_array_id, oacc_max_threads)
      	(get_offload_symbol_decl, get_base_type, lookup_oacc_reduction)
      	(maybe_lookup_oacc_reduction, enclosing_target_ctx)
      	(oacc_loop_or_target_p, oacc_lower_reduction_var_helper)
      	(oacc_gimple_assign, oacc_initialize_reduction_data)
      	(oacc_finalize_reduction_data, oacc_process_reduction_data): New
      	functions.
      	(is_targetreg_ctx): Remove function.
      	* tree-core.h (enum omp_clause_code): Add OMP_CLAUSE__CACHE_,
      	OMP_CLAUSE_DEVICE_RESIDENT, OMP_CLAUSE_USE_DEVICE,
      	OMP_CLAUSE_GANG, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT,
      	OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT,
      	OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, OMP_CLAUSE_NUM_GANGS,
      	OMP_CLAUSE_NUM_WORKERS, OMP_CLAUSE_VECTOR_LENGTH.
      	* tree.c (omp_clause_code_name, walk_tree_1): Update accordingly.
      	* tree.h (OMP_CLAUSE_GANG_EXPR, OMP_CLAUSE_GANG_STATIC_EXPR)
      	(OMP_CLAUSE_ASYNC_EXPR, OMP_CLAUSE_WAIT_EXPR)
      	(OMP_CLAUSE_VECTOR_EXPR, OMP_CLAUSE_WORKER_EXPR)
      	(OMP_CLAUSE_NUM_GANGS_EXPR, OMP_CLAUSE_NUM_WORKERS_EXPR)
      	(OMP_CLAUSE_VECTOR_LENGTH_EXPR): New macros.
      	* tree-core.h: Update comments for OpenACC changes.
      	(enum omp_clause_map_kind): Remove.
      	(struct tree_omp_clause): Change type of map_kind member from enum
      	omp_clause_map_kind to unsigned char.
      	* tree-inline.c: Update comments for OpenACC changes.
      	* tree-nested.c: Likewise.  Include "gomp-constants.h".
      	(convert_nonlocal_reference_stmt, convert_local_reference_stmt)
      	(convert_tramp_reference_stmt, convert_gimple_call): Update for
      	OpenACC changes.  Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.  Use
      	OMP_CLAUSE_SET_MAP_KIND.
      	* tree-pretty-print.c: Include "gomp-constants.h".
      	(dump_omp_clause): Handle OMP_CLAUSE_DEVICE_RESIDENT,
      	OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE__CACHE_, OMP_CLAUSE_GANG,
      	OMP_CLAUSE_ASYNC, OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ,
      	OMP_CLAUSE_WAIT, OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR,
      	OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS,
      	OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_INDEPENDENT.  Use GOMP_MAP_*
      	instead of OMP_CLAUSE_MAP_*.
      	(dump_generic_node): Handle OACC_PARALLEL, OACC_KERNELS,
      	OACC_DATA, OACC_HOST_DATA, OACC_DECLARE, OACC_UPDATE,
      	OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_CACHE, OACC_LOOP.
      	* tree-streamer-in.c: Include "gomp-constants.h".
      	(unpack_ts_omp_clause_value_fields) Use GOMP_MAP_* instead of
      	OMP_CLAUSE_MAP_*.  Use OMP_CLAUSE_SET_MAP_KIND.
      	* tree-streamer-out.c: Include "gomp-constants.h".
      	(pack_ts_omp_clause_value_fields): Use GOMP_MAP_* instead of
      	OMP_CLAUSE_MAP_*.
      	* tree.def (OACC_PARALLEL, OACC_KERNELS, OACC_DATA)
      	(OACC_HOST_DATA, OACC_LOOP, OACC_CACHE, OACC_DECLARE)
      	(OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_UPDATE): New tree codes.
      	* tree.c (omp_clause_num_ops): Update accordingly.
      	* tree.h (OMP_BODY, OMP_CLAUSES, OMP_LOOP_CHECK, OMP_CLAUSE_SIZE):
      	Likewise.
      	(OACC_PARALLEL_BODY, OACC_PARALLEL_CLAUSES, OACC_KERNELS_BODY)
      	(OACC_KERNELS_CLAUSES, OACC_DATA_BODY, OACC_DATA_CLAUSES)
      	(OACC_HOST_DATA_BODY, OACC_HOST_DATA_CLAUSES, OACC_CACHE_CLAUSES)
      	(OACC_DECLARE_CLAUSES, OACC_ENTER_DATA_CLAUSES)
      	(OACC_EXIT_DATA_CLAUSES, OACC_UPDATE_CLAUSES)
      	(OACC_KERNELS_COMBINED, OACC_PARALLEL_COMBINED): New macros.
      	* tree.h (OMP_CLAUSE_MAP_KIND): Cast it to enum gomp_map_kind.
      	(OMP_CLAUSE_SET_MAP_KIND): New macro.
      	* varpool.c (varpool_node::get_create): Consider flag_openacc next
      	to flag_openmp.
      	* config/i386/intelmic-offload.h: New file.
      	* config/nvptx/offload.h: Likewise.
      	gcc/ada/
      	* gcc-interface/utils.c (DEF_FUNCTION_TYPE_VAR_8)
      	(DEF_FUNCTION_TYPE_VAR_12): New macros.
      	gcc/c-family/
      	* c.opt (fopenacc): New option.
      	* c-cppbuiltin.c (c_cpp_builtins): Conditionally define _OPENACC.
      	* c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
      	New macros.
      	* c-common.h (c_finish_oacc_wait): New prototype.
      	* c-omp.c: Include "omp-low.h" and "gomp-constants.h".
      	(c_finish_oacc_wait): New function.
      	* c-pragma.c (oacc_pragmas): New variable.
      	(c_pp_lookup_pragma, init_pragma): Handle it.
      	* c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_CACHE,
      	PRAGMA_OACC_DATA, PRAGMA_OACC_ENTER_DATA, PRAGMA_OACC_EXIT_DATA,
      	PRAGMA_OACC_KERNELS, PRAGMA_OACC_LOOP, PRAGMA_OACC_PARALLEL,
      	PRAGMA_OACC_UPDATE, PRAGMA_OACC_WAIT.
      	(enum pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_ASYNC,
      	PRAGMA_OACC_CLAUSE_AUTO, PRAGMA_OACC_CLAUSE_COLLAPSE,
      	PRAGMA_OACC_CLAUSE_COPY, PRAGMA_OACC_CLAUSE_COPYIN,
      	PRAGMA_OACC_CLAUSE_COPYOUT, PRAGMA_OACC_CLAUSE_CREATE,
      	PRAGMA_OACC_CLAUSE_DELETE, PRAGMA_OACC_CLAUSE_DEVICE,
      	PRAGMA_OACC_CLAUSE_DEVICEPTR, PRAGMA_OACC_CLAUSE_FIRSTPRIVATE,
      	PRAGMA_OACC_CLAUSE_GANG, PRAGMA_OACC_CLAUSE_HOST,
      	PRAGMA_OACC_CLAUSE_IF, PRAGMA_OACC_CLAUSE_NUM_GANGS,
      	PRAGMA_OACC_CLAUSE_NUM_WORKERS, PRAGMA_OACC_CLAUSE_PRESENT,
      	PRAGMA_OACC_CLAUSE_PRESENT_OR_COPY,
      	PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYIN,
      	PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYOUT,
      	PRAGMA_OACC_CLAUSE_PRESENT_OR_CREATE, PRAGMA_OACC_CLAUSE_PRIVATE,
      	PRAGMA_OACC_CLAUSE_REDUCTION, PRAGMA_OACC_CLAUSE_SELF,
      	PRAGMA_OACC_CLAUSE_SEQ, PRAGMA_OACC_CLAUSE_VECTOR,
      	PRAGMA_OACC_CLAUSE_VECTOR_LENGTH, PRAGMA_OACC_CLAUSE_WAIT,
      	PRAGMA_OACC_CLAUSE_WORKER.
      	gcc/c/
      	* c-parser.c: Include "gomp-constants.h".
      	(c_parser_omp_clause_map): Use enum gomp_map_kind instead of enum
      	omp_clause_map_kind.  Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.
      	Use OMP_CLAUSE_SET_MAP_KIND.
      	(c_parser_pragma): Handle PRAGMA_OACC_ENTER_DATA,
      	PRAGMA_OACC_EXIT_DATA, PRAGMA_OACC_UPDATE.
      	(c_parser_omp_construct): Handle PRAGMA_OACC_CACHE,
      	PRAGMA_OACC_DATA, PRAGMA_OACC_KERNELS, PRAGMA_OACC_LOOP,
      	PRAGMA_OACC_PARALLEL, PRAGMA_OACC_WAIT.
      	(c_parser_omp_clause_name): Handle "auto", "async", "copy",
      	"copyout", "create", "delete", "deviceptr", "gang", "host",
      	"num_gangs", "num_workers", "present", "present_or_copy", "pcopy",
      	"present_or_copyin", "pcopyin", "present_or_copyout", "pcopyout",
      	"present_or_create", "pcreate", "seq", "self", "vector",
      	"vector_length", "wait", "worker".
      	(OACC_DATA_CLAUSE_MASK, OACC_KERNELS_CLAUSE_MASK)
      	(OACC_ENTER_DATA_CLAUSE_MASK, OACC_EXIT_DATA_CLAUSE_MASK)
      	(OACC_LOOP_CLAUSE_MASK, OACC_PARALLEL_CLAUSE_MASK)
      	(OACC_UPDATE_CLAUSE_MASK, OACC_WAIT_CLAUSE_MASK): New macros.
      	(c_parser_omp_variable_list): Handle OMP_CLAUSE__CACHE_.
      	(c_parser_oacc_wait_list, c_parser_oacc_data_clause)
      	(c_parser_oacc_data_clause_deviceptr)
      	(c_parser_omp_clause_num_gangs, c_parser_omp_clause_num_workers)
      	(c_parser_oacc_clause_async, c_parser_oacc_clause_wait)
      	(c_parser_omp_clause_vector_length, c_parser_oacc_all_clauses)
      	(c_parser_oacc_cache, c_parser_oacc_data, c_parser_oacc_kernels)
      	(c_parser_oacc_enter_exit_data, c_parser_oacc_loop)
      	(c_parser_oacc_parallel, c_parser_oacc_update)
      	(c_parser_oacc_wait): New functions.
      	* c-tree.h (c_finish_oacc_parallel, c_finish_oacc_kernels)
      	(c_finish_oacc_data): New prototypes.
      	* c-typeck.c: Include "gomp-constants.h".
      	(handle_omp_array_sections): Handle GOMP_MAP_FORCE_DEVICEPTR.  Use
      	GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.  Use
      	OMP_CLAUSE_SET_MAP_KIND.
      	(c_finish_oacc_parallel, c_finish_oacc_kernels)
      	(c_finish_oacc_data): New functions.
      	(c_finish_omp_clauses): Handle OMP_CLAUSE__CACHE_,
      	OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS,
      	OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT,
      	OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ, OMP_CLAUSE_GANG,
      	OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, and OMP_CLAUSE_MAP's
      	GOMP_MAP_FORCE_DEVICEPTR.
      	gcc/cp/
      	* parser.c: Include "gomp-constants.h".
      	(cp_parser_omp_clause_map): Use enum gomp_map_kind instead of enum
      	omp_clause_map_kind.  Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.
      	Use OMP_CLAUSE_SET_MAP_KIND.
      	(cp_parser_omp_construct, cp_parser_pragma): Handle
      	PRAGMA_OACC_CACHE, PRAGMA_OACC_DATA, PRAGMA_OACC_ENTER_DATA,
      	PRAGMA_OACC_EXIT_DATA, PRAGMA_OACC_KERNELS, PRAGMA_OACC_PARALLEL,
      	PRAGMA_OACC_LOOP, PRAGMA_OACC_UPDATE, PRAGMA_OACC_WAIT.
      	(cp_parser_omp_clause_name): Handle "async", "copy", "copyout",
      	"create", "delete", "deviceptr", "host", "num_gangs",
      	"num_workers", "present", "present_or_copy", "pcopy",
      	"present_or_copyin", "pcopyin", "present_or_copyout", "pcopyout",
      	"present_or_create", "pcreate", "vector_length", "wait".
      	(OACC_DATA_CLAUSE_MASK, OACC_ENTER_DATA_CLAUSE_MASK)
      	(OACC_EXIT_DATA_CLAUSE_MASK, OACC_KERNELS_CLAUSE_MASK)
      	(OACC_LOOP_CLAUSE_MASK, OACC_PARALLEL_CLAUSE_MASK)
      	(OACC_UPDATE_CLAUSE_MASK, OACC_WAIT_CLAUSE_MASK): New macros.
      	(cp_parser_omp_var_list_no_open): Handle OMP_CLAUSE__CACHE_.
      	(cp_parser_oacc_data_clause, cp_parser_oacc_data_clause_deviceptr)
      	(cp_parser_oacc_clause_vector_length, cp_parser_oacc_wait_list)
      	(cp_parser_oacc_clause_wait, cp_parser_omp_clause_num_gangs)
      	(cp_parser_omp_clause_num_workers, cp_parser_oacc_clause_async)
      	(cp_parser_oacc_all_clauses, cp_parser_oacc_cache)
      	(cp_parser_oacc_data, cp_parser_oacc_enter_exit_data)
      	(cp_parser_oacc_kernels, cp_parser_oacc_loop)
      	(cp_parser_oacc_parallel, cp_parser_oacc_update)
      	(cp_parser_oacc_wait): New functions.
      	* cp-tree.h (finish_oacc_data, finish_oacc_kernels)
      	(finish_oacc_parallel): New prototypes.
      	* semantics.c: Include "gomp-constants.h".
      	(handle_omp_array_sections): Handle GOMP_MAP_FORCE_DEVICEPTR.  Use
      	GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.  Use
      	OMP_CLAUSE_SET_MAP_KIND.
      	(finish_omp_clauses): Handle OMP_CLAUSE_ASYNC,
      	OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_WAIT, OMP_CLAUSE__CACHE_.
      	Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.
      	(finish_oacc_data, finish_oacc_kernels, finish_oacc_parallel): New
      	functions.
      	gcc/fortran/
      	* lang.opt (fopenacc): New option.
      	* cpp.c (cpp_define_builtins): Conditionally define _OPENACC.
      	* dump-parse-tree.c (show_omp_node): Split part of it into...
      	(show_omp_clauses): ... this new function.
      	(show_omp_node, show_code_node): Handle EXEC_OACC_PARALLEL_LOOP,
      	EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
      	EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
      	EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
      	EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
      	(show_namespace): Update for OpenACC.
      	* f95-lang.c (DEF_FUNCTION_TYPE_VAR_2, DEF_FUNCTION_TYPE_VAR_8)
      	(DEF_FUNCTION_TYPE_VAR_12, DEF_GOACC_BUILTIN)
      	(DEF_GOACC_BUILTIN_COMPILER): New macros.
      	* types.def (BT_FN_VOID_INT_INT_VAR)
      	(BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
      	(BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
      	New function types.
      	* gfortran.h (gfc_statement): Add ST_OACC_PARALLEL_LOOP,
      	ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
      	ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_DATA,
      	ST_OACC_END_DATA, ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA,
      	ST_OACC_LOOP, ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE,
      	ST_OACC_WAIT, ST_OACC_CACHE, ST_OACC_KERNELS_LOOP,
      	ST_OACC_END_KERNELS_LOOP, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
      	ST_OACC_ROUTINE.
      	(struct gfc_expr_list): New data type.
      	(gfc_get_expr_list): New macro.
      	(gfc_omp_map_op): Add OMP_MAP_FORCE_ALLOC, OMP_MAP_FORCE_DEALLOC,
      	OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM, OMP_MAP_FORCE_TOFROM,
      	OMP_MAP_FORCE_PRESENT, OMP_MAP_FORCE_DEVICEPTR.
      	(OMP_LIST_FIRST, OMP_LIST_DEVICE_RESIDENT, OMP_LIST_USE_DEVICE)
      	(OMP_LIST_CACHE): New enumerators.
      	(struct gfc_omp_clauses): Add async_expr, gang_expr, worker_expr,
      	vector_expr, num_gangs_expr, num_workers_expr, vector_length_expr,
      	wait_list, tile_list, async, gang, worker, vector, seq,
      	independent, wait, par_auto, gang_static, and loc members.
      	(struct gfc_namespace): Add oacc_declare_clauses member.
      	(gfc_exec_op): Add EXEC_OACC_KERNELS_LOOP,
      	EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS,
      	EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
      	EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
      	EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
      	(gfc_free_expr_list, gfc_resolve_oacc_directive)
      	(gfc_resolve_oacc_declare, gfc_resolve_oacc_parallel_loop_blocks)
      	(gfc_resolve_oacc_blocks): New prototypes.
      	* match.c (match_exit_cycle): Handle EXEC_OACC_LOOP and
      	EXEC_OACC_PARALLEL_LOOP.
      	* match.h (gfc_match_oacc_cache, gfc_match_oacc_wait)
      	(gfc_match_oacc_update, gfc_match_oacc_declare)
      	(gfc_match_oacc_loop, gfc_match_oacc_host_data)
      	(gfc_match_oacc_data, gfc_match_oacc_kernels)
      	(gfc_match_oacc_kernels_loop, gfc_match_oacc_parallel)
      	(gfc_match_oacc_parallel_loop, gfc_match_oacc_enter_data)
      	(gfc_match_oacc_exit_data, gfc_match_oacc_routine): New
      	prototypes.
      	* openmp.c: Include "diagnostic.h" and "gomp-constants.h".
      	(gfc_free_omp_clauses): Update for members added to struct
      	gfc_omp_clauses.
      	(gfc_match_omp_clauses): Change mask paramter to uint64_t.  Add
      	openacc parameter.
      	(resolve_omp_clauses): Add openacc parameter.  Update for OpenACC.
      	(struct fortran_omp_context): Add is_openmp member.
      	(gfc_resolve_omp_parallel_blocks): Initialize it.
      	(gfc_resolve_do_iterator): Update for OpenACC.
      	(gfc_resolve_omp_directive): Call
      	resolve_omp_directive_inside_oacc_region.
      	(OMP_CLAUSE_PRIVATE, OMP_CLAUSE_FIRSTPRIVATE)
      	(OMP_CLAUSE_LASTPRIVATE, OMP_CLAUSE_COPYPRIVATE)
      	(OMP_CLAUSE_SHARED, OMP_CLAUSE_COPYIN, OMP_CLAUSE_REDUCTION)
      	(OMP_CLAUSE_IF, OMP_CLAUSE_NUM_THREADS, OMP_CLAUSE_SCHEDULE)
      	(OMP_CLAUSE_DEFAULT, OMP_CLAUSE_ORDERED, OMP_CLAUSE_COLLAPSE)
      	(OMP_CLAUSE_UNTIED, OMP_CLAUSE_FINAL, OMP_CLAUSE_MERGEABLE)
      	(OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND, OMP_CLAUSE_INBRANCH)
      	(OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH, OMP_CLAUSE_PROC_BIND)
      	(OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN, OMP_CLAUSE_UNIFORM)
      	(OMP_CLAUSE_DEVICE, OMP_CLAUSE_MAP, OMP_CLAUSE_TO)
      	(OMP_CLAUSE_FROM, OMP_CLAUSE_NUM_TEAMS, OMP_CLAUSE_THREAD_LIMIT)
      	(OMP_CLAUSE_DIST_SCHEDULE): Use uint64_t.
      	(OMP_CLAUSE_ASYNC, OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS)
      	(OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_COPY, OMP_CLAUSE_COPYOUT)
      	(OMP_CLAUSE_CREATE, OMP_CLAUSE_PRESENT)
      	(OMP_CLAUSE_PRESENT_OR_COPY, OMP_CLAUSE_PRESENT_OR_COPYIN)
      	(OMP_CLAUSE_PRESENT_OR_COPYOUT, OMP_CLAUSE_PRESENT_OR_CREATE)
      	(OMP_CLAUSE_DEVICEPTR, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER)
      	(OMP_CLAUSE_VECTOR, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT)
      	(OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_DEVICE_RESIDENT)
      	(OMP_CLAUSE_HOST_SELF, OMP_CLAUSE_OACC_DEVICE, OMP_CLAUSE_WAIT)
      	(OMP_CLAUSE_DELETE, OMP_CLAUSE_AUTO, OMP_CLAUSE_TILE): New macros.
      	(gfc_match_omp_clauses): Handle those.
      	(OACC_PARALLEL_CLAUSES, OACC_KERNELS_CLAUSES, OACC_DATA_CLAUSES)
      	(OACC_LOOP_CLAUSES, OACC_PARALLEL_LOOP_CLAUSES)
      	(OACC_KERNELS_LOOP_CLAUSES, OACC_HOST_DATA_CLAUSES)
      	(OACC_DECLARE_CLAUSES, OACC_UPDATE_CLAUSES)
      	(OACC_ENTER_DATA_CLAUSES, OACC_EXIT_DATA_CLAUSES)
      	(OACC_WAIT_CLAUSES): New macros.
      	(gfc_free_expr_list, match_oacc_expr_list, match_oacc_clause_gang)
      	(gfc_match_omp_map_clause, gfc_match_oacc_parallel_loop)
      	(gfc_match_oacc_parallel, gfc_match_oacc_kernels_loop)
      	(gfc_match_oacc_kernels, gfc_match_oacc_data)
      	(gfc_match_oacc_host_data, gfc_match_oacc_loop)
      	(gfc_match_oacc_declare, gfc_match_oacc_update)
      	(gfc_match_oacc_enter_data, gfc_match_oacc_exit_data)
      	(gfc_match_oacc_wait, gfc_match_oacc_cache)
      	(gfc_match_oacc_routine, oacc_is_loop)
      	(resolve_oacc_scalar_int_expr, resolve_oacc_positive_int_expr)
      	(check_symbol_not_pointer, check_array_not_assumed)
      	(resolve_oacc_data_clauses, resolve_oacc_deviceptr_clause)
      	(oacc_compatible_clauses, oacc_is_parallel, oacc_is_kernels)
      	(omp_code_to_statement, oacc_code_to_statement)
      	(resolve_oacc_directive_inside_omp_region)
      	(resolve_omp_directive_inside_oacc_region)
      	(resolve_oacc_nested_loops, resolve_oacc_params_in_parallel)
      	(resolve_oacc_loop_blocks, gfc_resolve_oacc_blocks)
      	(resolve_oacc_loop, resolve_oacc_cache, gfc_resolve_oacc_declare)
      	(gfc_resolve_oacc_directive): New functions.
      	* parse.c (next_free): Update for OpenACC.  Move some code into...
      	(verify_token_free): ... this new function.
      	(next_fixed): Update for OpenACC.  Move some code into...
      	(verify_token_fixed): ... this new function.
      	(case_executable): Add ST_OACC_UPDATE, ST_OACC_WAIT,
      	ST_OACC_CACHE, ST_OACC_ENTER_DATA, and ST_OACC_EXIT_DATA.
      	(case_exec_markers): Add ST_OACC_PARALLEL_LOOP, ST_OACC_PARALLEL,
      	ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA, ST_OACC_LOOP,
      	ST_OACC_KERNELS_LOOP.
      	(case_decl): Add ST_OACC_ROUTINE.
      	(push_state, parse_critical_block, parse_progunit): Update for
      	OpenACC.
      	(gfc_ascii_statement): Handle ST_OACC_PARALLEL_LOOP,
      	ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
      	ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_KERNELS_LOOP,
      	ST_OACC_END_KERNELS_LOOP, ST_OACC_DATA, ST_OACC_END_DATA,
      	ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA, ST_OACC_LOOP,
      	ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE, ST_OACC_WAIT,
      	ST_OACC_CACHE, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
      	ST_OACC_ROUTINE.
      	(verify_st_order, parse_spec): Handle ST_OACC_DECLARE.
      	(parse_executable): Handle ST_OACC_PARALLEL_LOOP,
      	ST_OACC_KERNELS_LOOP, ST_OACC_LOOP, ST_OACC_PARALLEL,
      	ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA.
      	(decode_oacc_directive, parse_oacc_structured_block)
      	(parse_oacc_loop, is_oacc): New functions.
      	* parse.h (struct gfc_state_data): Add oacc_declare_clauses
      	member.
      	(is_oacc): New prototype.
      	* resolve.c (gfc_resolve_blocks, gfc_resolve_code): Handle
      	EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL,
      	EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS, EXEC_OACC_DATA,
      	EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP, EXEC_OACC_UPDATE,
      	EXEC_OACC_WAIT, EXEC_OACC_CACHE, EXEC_OACC_ENTER_DATA,
      	EXEC_OACC_EXIT_DATA.
      	(resolve_codes): Call gfc_resolve_oacc_declare.
      	* scanner.c (openacc_flag, openacc_locus): New variables.
      	(skip_free_comments): Update for OpenACC.  Move some code into...
      	(skip_omp_attribute): ... this new function.
      	(skip_oacc_attribute): New function.
      	(skip_fixed_comments, gfc_next_char_literal): Update for OpenACC.
      	* st.c (gfc_free_statement): Handle EXEC_OACC_PARALLEL_LOOP,
      	EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
      	EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
      	EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
      	EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
      	* trans-decl.c (gfc_generate_function_code): Update for OpenACC.
      	* trans-openmp.c: Include "gomp-constants.h".
      	(gfc_omp_finish_clause, gfc_trans_omp_clauses): Use GOMP_MAP_*
      	instead of OMP_CLAUSE_MAP_*.  Use OMP_CLAUSE_SET_MAP_KIND.
      	(gfc_trans_omp_clauses): Handle OMP_LIST_USE_DEVICE,
      	OMP_LIST_DEVICE_RESIDENT, OMP_LIST_CACHE, and OMP_MAP_FORCE_ALLOC,
      	OMP_MAP_FORCE_DEALLOC, OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM,
      	OMP_MAP_FORCE_TOFROM, OMP_MAP_FORCE_PRESENT,
      	OMP_MAP_FORCE_DEVICEPTR, and gfc_omp_clauses' async, seq,
      	independent, wait_list, num_gangs_expr, num_workers_expr,
      	vector_length_expr, vector, vector_expr, worker, worker_expr,
      	gang, gang_expr members.
      	(gfc_trans_omp_do): Handle EXEC_OACC_LOOP.
      	(gfc_convert_expr_to_tree, gfc_trans_oacc_construct)
      	(gfc_trans_oacc_executable_directive)
      	(gfc_trans_oacc_wait_directive, gfc_trans_oacc_combined_directive)
      	(gfc_trans_oacc_declare, gfc_trans_oacc_directive): New functions.
      	* trans-stmt.c (gfc_trans_block_construct): Update for OpenACC.
      	* trans-stmt.h (gfc_trans_oacc_directive, gfc_trans_oacc_declare):
      	New prototypes.
      	* trans.c (tranc_code): Handle EXEC_OACC_CACHE, EXEC_OACC_WAIT,
      	EXEC_OACC_UPDATE, EXEC_OACC_LOOP, EXEC_OACC_HOST_DATA,
      	EXEC_OACC_DATA, EXEC_OACC_KERNELS, EXEC_OACC_KERNELS_LOOP,
      	EXEC_OACC_PARALLEL, EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_ENTER_DATA,
      	EXEC_OACC_EXIT_DATA.
      	* gfortran.texi: Update for OpenACC.
      	* intrinsic.texi: Likewise.
      	* invoke.texi: Likewise.
      	gcc/lto/
      	* lto-lang.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
      	New macros.
      	* lto.c: Include "gomp-constants.h".
      	gcc/testsuite/
      	* lib/target-supports.exp (check_effective_target_fopenacc): New
      	procedure.
      	* g++.dg/goacc-gomp/goacc-gomp.exp: New file.
      	* g++.dg/goacc/goacc.exp: Likewise.
      	* gcc.dg/goacc-gomp/goacc-gomp.exp: Likewise.
      	* gcc.dg/goacc/goacc.exp: Likewise.
      	* gfortran.dg/goacc/goacc.exp: Likewise.
      	* c-c++-common/cpp/openacc-define-1.c: New file.
      	* c-c++-common/cpp/openacc-define-2.c: Likewise.
      	* c-c++-common/cpp/openacc-define-3.c: Likewise.
      	* c-c++-common/goacc-gomp/nesting-1.c: Likewise.
      	* c-c++-common/goacc-gomp/nesting-fail-1.c: Likewise.
      	* c-c++-common/goacc/acc_on_device-2-off.c: Likewise.
      	* c-c++-common/goacc/acc_on_device-2.c: Likewise.
      	* c-c++-common/goacc/asyncwait-1.c: Likewise.
      	* c-c++-common/goacc/cache-1.c: Likewise.
      	* c-c++-common/goacc/clauses-fail.c: Likewise.
      	* c-c++-common/goacc/collapse-1.c: Likewise.
      	* c-c++-common/goacc/data-1.c: Likewise.
      	* c-c++-common/goacc/data-2.c: Likewise.
      	* c-c++-common/goacc/data-clause-duplicate-1.c: Likewise.
      	* c-c++-common/goacc/deviceptr-1.c: Likewise.
      	* c-c++-common/goacc/deviceptr-2.c: Likewise.
      	* c-c++-common/goacc/deviceptr-3.c: Likewise.
      	* c-c++-common/goacc/if-clause-1.c: Likewise.
      	* c-c++-common/goacc/if-clause-2.c: Likewise.
      	* c-c++-common/goacc/kernels-1.c: Likewise.
      	* c-c++-common/goacc/loop-1.c: Likewise.
      	* c-c++-common/goacc/loop-private-1.c: Likewise.
      	* c-c++-common/goacc/nesting-1.c: Likewise.
      	* c-c++-common/goacc/nesting-data-1.c: Likewise.
      	* c-c++-common/goacc/nesting-fail-1.c: Likewise.
      	* c-c++-common/goacc/parallel-1.c: Likewise.
      	* c-c++-common/goacc/pcopy.c: Likewise.
      	* c-c++-common/goacc/pcopyin.c: Likewise.
      	* c-c++-common/goacc/pcopyout.c: Likewise.
      	* c-c++-common/goacc/pcreate.c: Likewise.
      	* c-c++-common/goacc/pragma_context.c: Likewise.
      	* c-c++-common/goacc/present-1.c: Likewise.
      	* c-c++-common/goacc/reduction-1.c: Likewise.
      	* c-c++-common/goacc/reduction-2.c: Likewise.
      	* c-c++-common/goacc/reduction-3.c: Likewise.
      	* c-c++-common/goacc/reduction-4.c: Likewise.
      	* c-c++-common/goacc/sb-1.c: Likewise.
      	* c-c++-common/goacc/sb-2.c: Likewise.
      	* c-c++-common/goacc/sb-3.c: Likewise.
      	* c-c++-common/goacc/update-1.c: Likewise.
      	* gcc.dg/goacc/acc_on_device-1.c: Likewise.
      	* gfortran.dg/goacc/acc_on_device-1.f95: Likewise.
      	* gfortran.dg/goacc/acc_on_device-2-off.f95: Likewise.
      	* gfortran.dg/goacc/acc_on_device-2.f95: Likewise.
      	* gfortran.dg/goacc/assumed.f95: Likewise.
      	* gfortran.dg/goacc/asyncwait-1.f95: Likewise.
      	* gfortran.dg/goacc/asyncwait-2.f95: Likewise.
      	* gfortran.dg/goacc/asyncwait-3.f95: Likewise.
      	* gfortran.dg/goacc/asyncwait-4.f95: Likewise.
      	* gfortran.dg/goacc/branch.f95: Likewise.
      	* gfortran.dg/goacc/cache-1.f95: Likewise.
      	* gfortran.dg/goacc/coarray.f95: Likewise.
      	* gfortran.dg/goacc/continuation-free-form.f95: Likewise.
      	* gfortran.dg/goacc/cray.f95: Likewise.
      	* gfortran.dg/goacc/critical.f95: Likewise.
      	* gfortran.dg/goacc/data-clauses.f95: Likewise.
      	* gfortran.dg/goacc/data-tree.f95: Likewise.
      	* gfortran.dg/goacc/declare-1.f95: Likewise.
      	* gfortran.dg/goacc/enter-exit-data.f95: Likewise.
      	* gfortran.dg/goacc/fixed-1.f: Likewise.
      	* gfortran.dg/goacc/fixed-2.f: Likewise.
      	* gfortran.dg/goacc/fixed-3.f: Likewise.
      	* gfortran.dg/goacc/fixed-4.f: Likewise.
      	* gfortran.dg/goacc/host_data-tree.f95: Likewise.
      	* gfortran.dg/goacc/if.f95: Likewise.
      	* gfortran.dg/goacc/kernels-tree.f95: Likewise.
      	* gfortran.dg/goacc/list.f95: Likewise.
      	* gfortran.dg/goacc/literal.f95: Likewise.
      	* gfortran.dg/goacc/loop-1.f95: Likewise.
      	* gfortran.dg/goacc/loop-2.f95: Likewise.
      	* gfortran.dg/goacc/loop-3.f95: Likewise.
      	* gfortran.dg/goacc/loop-tree-1.f90: Likewise.
      	* gfortran.dg/goacc/omp.f95: Likewise.
      	* gfortran.dg/goacc/parallel-kernels-clauses.f95: Likewise.
      	* gfortran.dg/goacc/parallel-kernels-regions.f95: Likewise.
      	* gfortran.dg/goacc/parallel-tree.f95: Likewise.
      	* gfortran.dg/goacc/parameter.f95: Likewise.
      	* gfortran.dg/goacc/private-1.f95: Likewise.
      	* gfortran.dg/goacc/private-2.f95: Likewise.
      	* gfortran.dg/goacc/private-3.f95: Likewise.
      	* gfortran.dg/goacc/pure-elemental-procedures.f95: Likewise.
      	* gfortran.dg/goacc/reduction-2.f95: Likewise.
      	* gfortran.dg/goacc/reduction.f95: Likewise.
      	* gfortran.dg/goacc/routine-1.f90: Likewise.
      	* gfortran.dg/goacc/routine-2.f90: Likewise.
      	* gfortran.dg/goacc/sentinel-free-form.f95: Likewise.
      	* gfortran.dg/goacc/several-directives.f95: Likewise.
      	* gfortran.dg/goacc/sie.f95: Likewise.
      	* gfortran.dg/goacc/subarrays.f95: Likewise.
      	* gfortran.dg/gomp/map-1.f90: Likewise.
      	* gfortran.dg/openacc-define-1.f90: Likewise.
      	* gfortran.dg/openacc-define-2.f90: Likewise.
      	* gfortran.dg/openacc-define-3.f90: Likewise.
      	* g++.dg/gomp/block-1.C: Update for changed compiler output.
      	* g++.dg/gomp/block-2.C: Likewise.
      	* g++.dg/gomp/block-3.C: Likewise.
      	* g++.dg/gomp/block-5.C: Likewise.
      	* g++.dg/gomp/target-1.C: Likewise.
      	* g++.dg/gomp/target-2.C: Likewise.
      	* g++.dg/gomp/taskgroup-1.C: Likewise.
      	* g++.dg/gomp/teams-1.C: Likewise.
      	* gcc.dg/cilk-plus/jump-openmp.c: Likewise.
      	* gcc.dg/cilk-plus/jump.c: Likewise.
      	* gcc.dg/gomp/block-1.c: Likewise.
      	* gcc.dg/gomp/block-10.c: Likewise.
      	* gcc.dg/gomp/block-2.c: Likewise.
      	* gcc.dg/gomp/block-3.c: Likewise.
      	* gcc.dg/gomp/block-4.c: Likewise.
      	* gcc.dg/gomp/block-5.c: Likewise.
      	* gcc.dg/gomp/block-6.c: Likewise.
      	* gcc.dg/gomp/block-7.c: Likewise.
      	* gcc.dg/gomp/block-8.c: Likewise.
      	* gcc.dg/gomp/block-9.c: Likewise.
      	* gcc.dg/gomp/target-1.c: Likewise.
      	* gcc.dg/gomp/target-2.c: Likewise.
      	* gcc.dg/gomp/taskgroup-1.c: Likewise.
      	* gcc.dg/gomp/teams-1.c: Likewise.
      	include/
      	* gomp-constants.h: New file.
      	libgomp/
      	* Makefile.am (search_path): Add $(top_srcdir)/../include.
      	(libgomp_la_SOURCES): Add splay-tree.c, libgomp-plugin.c,
      	oacc-parallel.c, oacc-host.c, oacc-init.c, oacc-mem.c,
      	oacc-async.c, oacc-plugin.c, oacc-cuda.c.
      	[USE_FORTRAN] (libgomp_la_SOURCES): Add openacc.f90.
      	Include $(top_srcdir)/plugin/Makefrag.am.
      	(nodist_libsubinclude_HEADERS): Add openacc.h.
      	[USE_FORTRAN] (nodist_finclude_HEADERS): Add openacc_lib.h,
      	openacc.f90, openacc.mod, openacc_kinds.mod.
      	(omp_lib.mod): Generalize into...
      	(%.mod): ... this new rule.
      	(openacc_kinds.mod, openacc.mod): New rules.
      	* plugin/configfrag.ac: New file.
      	* configure.ac: Move plugin/offloading support into it.  Include
      	it.  Instantiate testsuite/libgomp-test-support.pt.exp.
      	* plugin/Makefrag.am: New file.
      	* testsuite/Makefile.am (OFFLOAD_TARGETS)
      	(OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS): Don't
      	export.
      	(libgomp-test-support.exp): New rule.
      	(all-local): Depend on it.
      	* Makefile.in: Regenerate.
      	* testsuite/Makefile.in: Regenerate.
      	* config.h.in: Likewise.
      	* configure: Likewise.
      	* configure.tgt: Harden shell syntax.
      	* env.c: Include "oacc-int.h".
      	(parse_acc_device_type): New function.
      	(gomp_debug_var, goacc_device_type, goacc_device_num): New
      	variables.
      	(initialize_env): Initialize those.  Call
      	goacc_runtime_initialize.
      	* error.c (gomp_vdebug, gomp_debug, gomp_vfatal): New functions.
      	(gomp_fatal): Call gomp_vfatal.
      	* libgomp.h: Include "libgomp-plugin.h" and <stdarg.h>.
      	(gomp_debug_var, goacc_device_type, goacc_device_num, gomp_vdebug)
      	(gomp_debug, gomp_verror, gomp_vfatal, gomp_init_targets_once)
      	(splay_tree_node, splay_tree, splay_tree_key)
      	(struct target_mem_desc, struct splay_tree_key_s)
      	(struct gomp_memory_mapping, struct acc_dispatch_t)
      	(struct gomp_device_descr, gomp_acc_insert_pointer)
      	(gomp_acc_remove_pointer, target_mem_desc, gomp_copy_from_async)
      	(gomp_unmap_vars, gomp_init_device, gomp_init_tables)
      	(gomp_free_memmap, gomp_fini_device): New declarations.
      	(gomp_vdebug, gomp_debug): New macros.
      	Include "splay-tree.h".
      	* libgomp.map (OACC_2.0): New symbol version.  Use for
      	acc_get_num_devices, acc_get_num_devices_h_, acc_set_device_type,
      	acc_set_device_type_h_, acc_get_device_type,
      	acc_get_device_type_h_, acc_set_device_num, acc_set_device_num_h_,
      	acc_get_device_num, acc_get_device_num_h_, acc_async_test,
      	acc_async_test_h_, acc_async_test_all, acc_async_test_all_h_,
      	acc_wait, acc_wait_h_, acc_wait_async, acc_wait_async_h_,
      	acc_wait_all, acc_wait_all_h_, acc_wait_all_async,
      	acc_wait_all_async_h_, acc_init, acc_init_h_, acc_shutdown,
      	acc_shutdown_h_, acc_on_device, acc_on_device_h_, acc_malloc,
      	acc_free, acc_copyin, acc_copyin_32_h_, acc_copyin_64_h_,
      	acc_copyin_array_h_, acc_present_or_copyin,
      	acc_present_or_copyin_32_h_, acc_present_or_copyin_64_h_,
      	acc_present_or_copyin_array_h_, acc_create, acc_create_32_h_,
      	acc_create_64_h_, acc_create_array_h_, acc_present_or_create,
      	acc_present_or_create_32_h_, acc_present_or_create_64_h_,
      	acc_present_or_create_array_h_, acc_copyout, acc_copyout_32_h_,
      	acc_copyout_64_h_, acc_copyout_array_h_, acc_delete,
      	acc_delete_32_h_, acc_delete_64_h_, acc_delete_array_h_,
      	acc_update_device, acc_update_device_32_h_,
      	acc_update_device_64_h_, acc_update_device_array_h_,
      	acc_update_self, acc_update_self_32_h_, acc_update_self_64_h_,
      	acc_update_self_array_h_, acc_map_data, acc_unmap_data,
      	acc_deviceptr, acc_hostptr, acc_is_present, acc_is_present_32_h_,
      	acc_is_present_64_h_, acc_is_present_array_h_,
      	acc_memcpy_to_device, acc_memcpy_from_device,
      	acc_get_current_cuda_device, acc_get_current_cuda_context,
      	acc_get_cuda_stream, acc_set_cuda_stream.
      	(GOACC_2.0): New symbol version.  Use for GOACC_data_end,
      	GOACC_data_start, GOACC_enter_exit_data, GOACC_parallel,
      	GOACC_update, GOACC_wait, GOACC_get_thread_num,
      	GOACC_get_num_threads.
      	(GOMP_PLUGIN_1.0): New symbol version.  Use for
      	GOMP_PLUGIN_malloc, GOMP_PLUGIN_malloc_cleared,
      	GOMP_PLUGIN_realloc, GOMP_PLUGIN_debug, GOMP_PLUGIN_error,
      	GOMP_PLUGIN_fatal, GOMP_PLUGIN_async_unmap_vars,
      	GOMP_PLUGIN_acc_thread.
      	* libgomp.texi: Update for OpenACC changes, and GOMP_DEBUG
      	environment variable.
      	* libgomp_g.h (GOACC_data_start, GOACC_data_end)
      	(GOACC_enter_exit_data, GOACC_parallel, GOACC_update, GOACC_wait)
      	(GOACC_get_num_threads, GOACC_get_thread_num): New declarations.
      	* splay-tree.h (splay_tree_lookup, splay_tree_insert)
      	(splay_tree_remove): New declarations.
      	(rotate_left, rotate_right, splay_tree_splay, splay_tree_insert)
      	(splay_tree_remove, splay_tree_lookup): Move into...
      	* splay-tree.c: ... this new file.
      	* target.c: Include "oacc-plugin.h", "oacc-int.h", <assert.h>.
      	(splay_tree_node, splay_tree, splay_tree_key)
      	(struct target_mem_desc, struct splay_tree_key_s)
      	(struct gomp_device_descr): Don't declare.
      	(num_devices_openmp): New variable.
      	(gomp_get_num_devices ): Use it.
      	(gomp_init_targets_once): New function.
      	(gomp_get_num_devices ): Use it.
      	(get_kind, gomp_copy_from_async, gomp_free_memmap)
      	(gomp_fini_device, gomp_register_image_for_device): New functions.
      	(gomp_map_vars): Add devaddrs parameter.
      	(gomp_update): Add mm parameter.
      	(gomp_init_device): Move most of it into...
      	(gomp_init_tables): ... this new function.
      	(gomp_register_images_for_device): Remove function.
      	(splay_compare, gomp_map_vars, gomp_unmap_vars, gomp_init_device):
      	Make them hidden instead of static.
      	(gomp_map_vars_existing, gomp_map_vars, gomp_unmap_vars)
      	(gomp_update, gomp_init_device, GOMP_target, GOMP_target_data)
      	(GOMP_target_end_data, GOMP_target_update)
      	(gomp_load_plugin_for_device, gomp_target_init): Update for
      	OpenACC changes.
      	* oacc-async.c: New file.
      	* oacc-cuda.c: Likewise.
      	* oacc-host.c: Likewise.
      	* oacc-init.c: Likewise.
      	* oacc-int.h: Likewise.
      	* oacc-mem.c: Likewise.
      	* oacc-parallel.c: Likewise.
      	* oacc-plugin.c: Likewise.
      	* oacc-plugin.h: Likewise.
      	* oacc-ptx.h: Likewise.
      	* openacc.f90: Likewise.
      	* openacc.h: Likewise.
      	* openacc_lib.h: Likewise.
      	* plugin/plugin-host.c: Likewise.
      	* plugin/plugin-nvptx.c: Likewise.
      	* libgomp-plugin.c: Likewise.
      	* libgomp-plugin.h: Likewise.
      	* libgomp_target.h: Remove file after merging content into the
      	former file.  Update all users.
      	* testsuite/lib/libgomp.exp: Load libgomp-test-support.exp.
      	(offload_targets_s, offload_targets_s_openacc): New variables.
      	(check_effective_target_openacc_nvidia_accel_present)
      	(check_effective_target_openacc_nvidia_accel_selected): New
      	procedures.
      	(libgomp_init): Update for OpenACC changes.
      	* testsuite/libgomp-test-support.exp.in: New file.
      	* testsuite/libgomp.oacc-c++/c++.exp: Likewise.
      	* testsuite/libgomp.oacc-c/c.exp: Likewise.
      	* testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/abort-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/abort-2.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/abort-4.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/cache-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/collapse-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/data-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/data-3.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/deviceptr-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-empty.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-12.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
      	* 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-19.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-24.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-31.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-33.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-37.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-38.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-41.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-45.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-46.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-49.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-5.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-50.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-51.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-55.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-56.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-59.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-60.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-61.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-66.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-69.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-7.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/nested-2.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/offset-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/parallel-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/parallel-empty.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/pointer-align-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/present-2.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
      	* 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-initial-1.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/subr.h: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/subr.ptx: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/timer.h: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/update-1.c: Likewise.
      	* testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/abort-2.f90: 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.
      	* 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/collapse-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/data-4.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.
      	* testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
      	* testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
      	* 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/routine-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
      	liboffloadmic/
      	* plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_get_name)
      	(GOMP_OFFLOAD_get_caps, GOMP_OFFLOAD_fini_device): New functions.
      
      Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com>
      Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
      Co-Authored-By: Dmitry Bocharnikov <dmitry.b@samsung.com>
      Co-Authored-By: Evgeny Gavrin <e.gavrin@samsung.com>
      Co-Authored-By: Ilmir Usmanov <i.usmanov@samsung.com>
      Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
      Co-Authored-By: James Norris <jnorris@codesourcery.com>
      Co-Authored-By: Julian Brown <julian@codesourcery.com>
      Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com>
      Co-Authored-By: Tobias Burnus <burnus@net-b.de>
      Co-Authored-By: Tom de Vries <tom@codesourcery.com>
      
      From-SVN: r219682
      Thomas Schwinge committed
  14. 10 Jan, 2015 1 commit
    • libgomp: Now known as the GNU Offloading and Multi Processing Runtime Library. · f1f3453e
      	libgomp/
      	* configure.ac: Rename libgomp from "GNU OpenMP Runtime Library"
      	to "GNU Offloading and Multi Processing Runtime Library".  Change
      	all users.
      	* configure: Regenerate.
      	* libgomp.texi: Update.
      	gcc/
      	* doc/install.texi: Update for libgomp being renamed from "GNU
      	OpenMP Runtime Library" to "GNU Offloading and Multi Processing
      	Runtime Library".
      	* doc/sourcebuild.texi: Likewise.
      	gcc/fortran/
      	* gfortran.texi: Update for libgomp being renamed from "GNU OpenMP
      	Runtime Library" to "GNU Offloading and Multi Processing Runtime
      	Library".
      	* intrinsic.texi: Likewise.
      	libstdc++-v3/
      	* doc/xml/manual/parallel_mode.xml: Update for libgomp being
      	renamed from "GNU OpenMP Runtime Library" to "GNU Offloading and
      	Multi Processing Runtime Library".
      
      Co-Authored-By: David Malcolm <dmalcolm@redhat.com>
      Co-Authored-By: Julian Brown <julian@codesourcery.com>
      
      From-SVN: r219425
      Thomas Schwinge committed
  15. 08 Jan, 2015 1 commit
    • libgomp: Fix 32-bit x86 Intel MIC offloading testing. · b335ef4e
          [...]
          spawn [...]/build-gcc/gcc/xgcc -B[...]/build-gcc/gcc/ [...]/source-gcc/libgomp/testsuite/libgomp.c/examples-4/e.50.1.c -B[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/ -B[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/.libs -I[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp -I[...]/source-gcc/libgomp/testsuite/.. -march=i486 -fmessage-length=0 -fno-diagnostics-show-caret -fdiagnostics-color=never -B[...]/install/offload-x86_64-intelmicemul-linux-gnu/libexec/gcc/x86_64-unknown-linux-gnu/5.0.0 -B[...]/install/offload-x86_64-intelmicemul-linux-gnu/bin -fopenmp -O2 -L[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/.libs -lm -m32 -o ./e.50.1.exe
          PASS: libgomp.c/examples-4/e.50.1.c (test for excess errors)
          Setting LD_LIBRARY_PATH to .:[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/../liboffloadmic/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/../liboffloadmic/plugin/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/../libstdc++-v3/src/.libs:[...]/install/offload-x86_64-intelmicemul-linux-gnu/lib64:[...]/install/offload-x86_64-intelmicemul-linux-gnu/lib:[...]/build-gcc/gcc:[...]/build-gcc/gcc/32:.:[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/../liboffloadmic/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/../liboffloadmic/plugin/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/32/libgomp/../libstdc++-v3/src/.libs:[...]/install/offload-x86_64-intelmicemul-linux-gnu/lib64:[...]/install/offload-x86_64-intelmicemul-linux-gnu/lib:[...]/build-gcc/gcc:[...]/build-gcc/gcc/32:[...]/build-gcc/x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/libsanitizer/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/libvtv/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/libcilkrts/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/liboffloadmic/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/libssp/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/libgomp/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/libitm/.libs:[...]/build-gcc/x86_64-unknown-linux-gnu/libatomic/.libs:[...]/build-gcc/./gcc:[...]/build-gcc/./prev-gcc
          spawn [open ...]
          /tmp/offload_WCXKRZ/offload_target_main: error while loading shared libraries: liboffloadmic_target.so.5: wrong ELF class: ELFCLASS64
          WARNING: program timed out.
          FAIL: libgomp.c/examples-4/e.50.1.c execution test
          [...]
      
          $ find -name liboffloadmic_target.so.5
          ./install/offload-x86_64-intelmicemul-linux-gnu/lib64/liboffloadmic_target.so.5
          ./install/offload-x86_64-intelmicemul-linux-gnu/lib32/liboffloadmic_target.so.5
          ./build-gcc-offload-x86_64-intelmicemul-linux-gnu/x86_64-intelmicemul-linux-gnu/32/liboffloadmic/.libs/liboffloadmic_target.so.5
          ./build-gcc-offload-x86_64-intelmicemul-linux-gnu/x86_64-intelmicemul-linux-gnu/liboffloadmic/.libs/liboffloadmic_target.so.5
      
      This is a "standard" GCC configuration: x86_64-intelmicemul-linux-gnu with
      (default) multilibs enabled.
      
      	libgomp/
      	* configure.ac [tgt_dir] (offload_additional_lib_paths): Also add
      	"$tgt_dir/lib32".
      	* configure: Regenerate.
      
      From-SVN: r219349
      Thomas Schwinge committed
  16. 10 Dec, 2014 1 commit
    • config.h.in: Regenerate. · f50eecba
      libgomp/
              * config.h.in: Regenerate.
              * configure: Regenerate.
              * configure.ac: Add GCC_CHECK_EMUTLS.
              * libgomp.h: Add check for USE_EMUTLS: this case
              is equal to HAVE_TLS.
              * team.c: Likewise.
      
      From-SVN: r218576
      Varvara Rainchik committed
  17. 21 Nov, 2014 1 commit
    • Always use PIC option with -shared in libtool · a699d672
      Libtool needs to pass PIC option -shared when creating shared object to
      link regular object files with slim-lto archive.
      
      	PR bootstrap/63784
      	* libtool.m4: Add $pic_flag with -shared.
      
      boehm-gc/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      gcc/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libatomic/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libbacktrace/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libcc1/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libcilkrts/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libffi/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libgfortran/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libgomp/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libitm/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libjava/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libjava/classpath/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libobjc/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libquadmath/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libsanitizer/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libssp/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libstdc++-v3/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libvtv/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      lto-plugin/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      From-SVN: r217937
      H.J. Lu committed
  18. 13 Nov, 2014 2 commits
    • [PATCH 4/4] OpenMP 4.0 offloading to Intel MIC: non-fallback testing. · d64ae614
      libgomp/
      	* Makefile.in: Regenerate.
      	* configure: Regenerate.
      	* configure.ac: Set up offload_additional_options,
      	offload_additional_lib_paths and offload_targets.
      	* testsuite/Makefile.am: Export environment variables: OFFLOAD_TARGETS,
      	OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS.
      	* testsuite/Makefile.in: Regenerate.
      	* testsuite/lib/libgomp.exp (libgomp_init): Append
      	offload_additional_lib_paths to LD_LIBRARY_PATH.  Append
      	offload_additional_options to ALWAYS_CFLAGS.  Append liboffloadmic
      	build directory to LD_LIBRARY_PATH for intelmic offload targets.
      
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      
      From-SVN: r217500
      Andrey Turetskiy committed
    • [PATCH 1/7] OpenMP 4.0 offloading infrastructure: configure and make · 85c64bbe
      	* configure: Regenerate.
      	* configure.ac (--enable-as-accelerator-for)
      	(--enable-offload-targets): New configure options.
      gcc/
      	* Makefile.in (real_target_noncanonical, accel_dir_suffix)
      	(enable_as_accelerator): New variables substituted by configure.
      	(libsubdir, libexecsubdir, unlibsubdir): Tweak for the possibility of
      	being configured as an offload compiler.
      	(DRIVER_DEFINES): Pass new defines DEFAULT_REAL_TARGET_MACHINE and
      	ACCEL_DIR_SUFFIX.
      	(install-cpp, install-common, install_driver, install-gcc-ar): Do not
      	install for the offload compiler.
      	* config.in: Regenerate.
      	* configure: Regenerate.
      	* configure.ac (real_target_noncanonical, accel_dir_suffix)
      	(enable_as_accelerator): Compute new variables.
      	(ACCEL_COMPILER): Define if the compiler is built as the accel compiler.
      	(OFFLOAD_TARGETS): List of target names suitable for offloading.
      	(ENABLE_OFFLOADING): Define if list of offload targets is not empty.
      gcc/cp/
      	* Make-lang.in (c++.install-common): Do not install for the offload
      	compiler.
      gcc/doc/
      	* install.texi (Options specification): Document
      	--enable-as-accelerator-for and --enable-offload-targets.
      gcc/fortran/
      	* Make-lang.in (fortran.install-common): Do not install for the offload
      	compiler.
      libgcc/
      	* Makefile.in (crtoffloadbegin$(objext)): New rule.
      	(crtoffloadend$(objext)): Likewise.
      	* configure: Regenerate.
      	* configure.ac (accel_dir_suffix): Compute new variable.
      	(extra_parts): Add crtoffloadbegin.o and crtoffloadend.o
      	if enable_offload_targets is not empty.
      	* offloadstuff.c: New file.
      libgomp/
      	* config.h.in: Regenerate.
      	* configure: Regenerate.
      	* configure.ac: Check for libdl, required for plugin support.
      	(PLUGIN_SUPPORT): Define if plugins are supported.
      	(enable_offload_targets): Support Intel MIC targets.
      	(OFFLOAD_TARGETS): List of target names suitable for offloading.
      lto-plugin/
      	* Makefile.am (libexecsubdir): Tweak for the possibility of being
      	configured for offload compiler.
      	(accel_dir_suffix, real_target_noncanonical): New variables substituted
      	by configure.
      	* Makefile.in: Regenerate.
      	* configure: Regenerate.
      	* configure.ac (accel_dir_suffix, real_target_noncanonical): Compute new
      	variables.
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Thomas Schwinge <thomas@codesourcery.com>
      
      From-SVN: r217485
      Bernd Schmidt committed
  19. 11 Nov, 2014 1 commit
    • re PR target/63610 (Fixing the libtool bug for Yosemite (darwin14)) · ebf6d33b
      toplevel:
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* libtool.m4: Fix globbing of darwin versions.
      
      boehm-gc/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      gcc/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libatomic/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libbacktrace/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libcc1/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libcilkrts/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libffi/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libgfortran/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libgomp/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libitm/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libobjc/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libquadmath/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libsanitizer/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libssp/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libstdc++-v3/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libvtv/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      lto-plugin/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libjava/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libjava/classpath/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      zlib/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      From-SVN: r217366
      Francois-Xavier Coudert committed
  20. 07 Nov, 2013 1 commit
    • Generally link to libgomp for -ftree-parallelize-loops=*. · de14871c
      	gcc/
      	* config/arc/arc.h (LINK_COMMAND_SPEC): For
      	-ftree-parallelize-loops=*, link to libgomp and its dependencies.
      	* config/ia64/hpux.h (LIB_SPEC): Likewise.
      	* config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
      	* config/pa/pa64-hpux.h (LIB_SPEC): Likewise.
      	* gcc.c (GOMP_SELF_SPECS): Update comment about libgomp's
      	dependencies.
      	libgomp/
      	* libgomp.spec.in: Update comment about libgomp's dependencies.
      	* configure.ac: Likewise.
      	* configure: Regenerate.
      
      From-SVN: r204517
      Thomas Schwinge committed
  21. 11 Oct, 2013 1 commit
  22. 20 Sep, 2013 1 commit
  23. 14 Sep, 2012 1 commit
  24. 16 May, 2012 1 commit
    • Regenerate configure files for libtool.m4 change · e6d5f8c9
      boehm-gc/
      
      	* configure: Regenerated.
      
      gcc/
      
      	* configure: Regenerated.
      
      libatomic/
      
      	* configure: Regenerated.
      
      libffi/
      
      	* configure: Regenerated.
      
      libgfortran/
      
      	* configure: Regenerated.
      
      libgomp/
      
      	* configure: Regenerated.
      
      libitm/
      
      	* configure: Regenerated.
      
      libjava/classpath/
      
      	* configure: Regenerated.
      
      libjava/
      
      	* configure: Regenerated.
      
      libmudflap/
      
      	* configure: Regenerated.
      
      libobjc/
      
      	* configure: Regenerated.
      
      libquadmath/
      
      	* configure: Regenerated.
      
      libssp/
      
      	* configure: Regenerated.
      
      libstdc++-v3/
      
      	* configure: Regenerated.
      
      lto-plugin/
      
      	* configure: Regenerated.
      
      zlib/
      
      	* configure: Regenerated.
      
      From-SVN: r187616
      H.J. Lu committed
  25. 27 Feb, 2012 1 commit
    • Fix Solaris symbol versioning (PR libstdc++/52188) · cc2de92d
      	contrib:
      	PR libstdc++/52188
      	* make_sunver.pl: Remove #ifdef handling.
      
      	libgomp:
      	PR libstdc++/52188
      	* acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Remove	symvers_renaming.
      	Remove ENABLE_SYMVERS_SOL2.
      	* configure: Regenerate.
      	* Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB] (comma): New variable.
      	(PREPROCESS): New variable.
      	(libgomp.ver): New target.
      	[LIBGOMP_BUILD_VERSIONED_SHLIB &&
      	LIBGOMP_BUILD_VERSIONED_SHLIB_GNU]: Remove
      	LIBGOMP_BUILD_VERSIONED_SHLIB_SOL2 handling.
      	Use libgomp.ver.
      	[LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Use libgomp.ver, libgomp.ver-sun.
      	* Makefile.in: Regenerate.
      
      	libstdc++-v3:
      	PR libstdc++/52188
      	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
      	Remove ENABLE_SYMVERS_SOL2.
      	* configure: Regenerate.
      	* src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
      	Postprocess mapfile.
      	[ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
      	* src/Makefile.in: Regenerate.
      
      	* config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
      	Don't export
      	_ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
      
      From-SVN: r184598
      Rainer Orth committed
  26. 21 Nov, 2011 1 commit
    • Additional fixes for FreeBSD-10 build: · c6084f68
      /:			* libtool.m4: Additional FreeBSD 10 fixes.
      
      boehm-gc/:		* configure: Regenerate.
      gcc/:			* configure: Regenerate.
      libffi/:		* configure: Regenerate.
      libgfortran/:		* configure: Regenerate.
      libgomp/:		* configure: Regenerate.
      libitm/:		* configure: Regenerate.
      libjava/:		* configure.ac: Fix some more FreeBSD 10 issues..
      			* configure: Regenerate.
      libjava/libltdl/:	* acinclude.m4: Additional FreeBSD 10 fixes.
      			* configure: Regenerate.
      libmudflap/:		* configure: Regenerate.
      libobjc/:		* configure: Regenerate.
      libquadmath/:		* configure: Regenerate.
      libssp/:		* configure: Regenerate.
      libstdc++-v3/:		* configure: Regenerate.
      lto-plugin/:		* configure: Regenerate.
      zlib/:			* configure: Regenerate.
      
      From-SVN: r181593
      Andreas Tobler committed
  27. 21 Mar, 2011 1 commit
    • re PR bootstrap/48135 (build fails on Solaris2.8 due to Glob.pm not found within /usr/perl5) · bf382f5f
      	libgfortran:
      	PR bootstrap/48135
      	* configure.ac (gfortran_use_symver): Handle --disable-symvers.
      	* configure: Regenerate.
      
      	libgomp:
      	PR bootstrap/48135
      	* acinclude.m4 (enable_symvers): Handle --disable-symvers.
      	* configure: Regenerate.
      
      	libjava:
      	PR bootstrap/48135
      	* configure.ac (libjava_cv_anon_version_script): Handle
      	--disable-symvers.
      	* configure: Regenerate.
      
      	libquadmath:
      	PR bootstrap/48135
      	* configure.ac (quadmath_use_symver): Handle --disable-symvers.
      	* configure: Regenerate.
      
      	libssp:
      	PR bootstrap/48135
      	* configure.ac (ssp_use_symver): Handle --disable-symvers.
      	* configure: Regenerate.
      
      From-SVN: r171224
      Rainer Orth committed
  28. 13 Feb, 2011 1 commit
    • Remove freebsd1 from libtool.m4 macros and config.rpath. · 029c8f3e
      /:
      	Import from Libtool and gnulib:
      
      	2011-01-27  Gerald Pfeifer  <gerald@pfeifer.com>
      
      	Prepare for supporting FreeBSD 10.
      	* config.rpath: Remove handling of freebsd1* which soon would
      	match FreeBSD 10.0.
      
      	2011-01-20  Gerald Pfeifer  <gerald@pfeifer.com>  (tiny change)
      
      	Remove support for FreeBSD 1.x.
      	* libtool.m4 (_LT_LINKER_SHLIBS)
      	(_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
      	soon would incorrectly match FreeBSD 10.0.
      
      boehm-gc/:
      	* configure: Regenerate.
      
      gcc/:
      	* configure: Regenerate.
      
      libffi/:
      	* configure: Regenerate.
      
      libgfortran/:
      	* Makefile.in: Regenerate.
      	* aclocal.m4: Likewise.
      	* configure: Likewise.
      
      libgo/:
      	* config/libtool.m4: (_LT_LINKER_SHLIBS)
      	(_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
      	soon would incorrectly match FreeBSD 10.0.
      	* configure: Regenerate.
      
      libgomp/:
      	* configure: Regenerate.
      
      libjava/:
      	* configure: Regenerate.
      	* shlibpath.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Remove handling
      	of freebsd1* which soon would incorrectly match FreeBSD 10.0.
      
      libjava/classpath/:
      	* config.rpath, ltcf-c.sh, ltcf-gcj.sh, ltconfig: Remove
      	handling of freebsd1* which soon would match FreeBSD 10.0.
      	* configure: Regenerate.
      
      libjava/libltdl/:
      	* acinclude.m4 (AC_LIBTOOL_PROG_LD_SHLIBS)
      	(AC_LIBTOOL_SYS_DYNAMIC_LINKER): Remove handling
      	of freebsd1* which soon would incorrectly match FreeBSD 10.0.
      	* configure: Regenerate.
      
      libmudflap/:
      	* configure: Regenerate.
      
      libobjc/:
      	* configure: Regenerate.
      
      libquadmath/:
      	* Makefile.in: Regenerate.
      	* aclocal.m4: Likewise.
      	* configure: Likewise.
      
      libssp/:
      	* Makefile.in: Regenerate.
      	* aclocal.m4: Likewise.
      	* configure: Likewise.
      
      libstdc++-v3/:
      	* configure: Regenerate.
      
      lto-plugin/:
      	* Makefile.in: Regenerate.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      
      zlib/:
      	* configure: Regenerate.
      
      From-SVN: r170106
      Ralf Wildenhues committed
  29. 20 Jan, 2011 1 commit
  30. 06 Dec, 2010 2 commits
    • acinclude.m4 (symvers_renaming): Also set if enable_symvers = no. · c0f9d583
      	libgomp:
      	* acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
      	* configure: Regenerate.
      
      	libstdc++-v3:
      	* acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
      	* configure: Regenerate.
      
      From-SVN: r167505
      Rainer Orth committed
    • re PR target/40125 (libgcc_s DLL installed in wrong directory in cross toolchain) · 7de6ba7a
      config/ChangeLog:
      
      2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
      
      	PR target/40125
      	PR lto/46695
      	* lthostflags.m4: New file.
      	(ACX_LT_HOST_FLAGS): Define.
      
      libgfortran/ChangeLog:
      
      2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
      
      	PR target/40125
      	PR lto/46695
      	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
      	* Makefile.am (LTLDFLAGS): Use lt_host_flags.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      	* Makefile.in: Regenerate.
      
      libgomp/ChangeLog:
      
      2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
      
      	PR target/40125
      	PR lto/46695
      	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
      	* Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      	* Makefile.in: Regenerate.
      	* testsuite/Makefile.in: Regenerate.
      
      libjava/ChangeLog:
      
      2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
      
      	PR target/40125
      	PR lto/46695
      	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
      	* configure.host (libgcj_sublib_ltflags): Use lt_host_flags.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      	* Makefile.in: Regenerate.
      	* gcj/Makefile.in: Regenerate.
      	* include/Makefile.in: Regenerate.
      	* testsuite/Makefile.in: Regenerate.
      
      libobjc/ChangeLog:
      
      2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
      
      	PR target/40125
      	PR lto/46695
      	* configure.ac (extra_ldflags_libobjc): Invoke ACX_LT_HOST_FLAGS.
      	* Makefile.in (lt_host_flags): Import AC_SUBST'd value.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      
      libquadmath/ChangeLog:
      
      2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
      
      	PR target/40125
      	PR lto/46695
      	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
      	* Makefile.am (libquadmath_la_LDFLAGS): Use lt_host_flags.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      	* Makefile.in: Regenerate.
      
      libssp/ChangeLog:
      
      2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
      
      	PR target/40125
      	PR lto/46695
      	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
      	* Makefile.am (libssp_la_LDFLAGS): Use lt_host_flags.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      	* Makefile.in: Regenerate.
      
      libstdc++-v3/ChangeLog:
      
      2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
      
      	PR target/40125
      	PR lto/46695
      	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
      	* configure.host (OPT_LDFLAGS): Use lt_host_flags for cygming.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      	* Makefile.in: Regenerate.
      	* doc/Makefile.in: Regenerate.
      	* include/Makefile.in: Regenerate.
      	* libsupc++/Makefile.in: Regenerate.
      	* po/Makefile.in: Regenerate.
      	* python/Makefile.in: Regenerate.
      	* src/Makefile.in: Regenerate.
      	* testsuite/Makefile.in: Regenerate.
      
      lto-plugin/ChangeLog:
      
      2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
      
      	PR target/40125
      	PR lto/46695
      	* configure.ac: Invoke ACX_LT_HOST_FLAGS.
      	* Makefile.am (liblto_plugin_la_LDFLAGS): Use lt_host_flags but
      	override -bindir setting.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      	* Makefile.in: Regenerate.
      
      From-SVN: r167480
      Dave Korn committed
  31. 16 Nov, 2010 1 commit
    • re PR fortran/32049 (Support on x86_64 also kind=16) · 1ec601bf
      /
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * Makefile.def: Add libquadmath; build it with language=fortran.
              * configure.ac: Add libquadmath.
              * Makefile.tpl: Handle multiple libs in check-[+language+].
              * Makefile.in: Regenerate.
              * configure: Regenerate.
      
      libquadmath/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              Initial implementation and checkin.
      
      gcc/fortran/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * gfortranspec.c (find_spec_file): New function.
              (lang_specific_driver): Try to find .spec file and use it.
              * trans-io.c (iocall): Define
              * IOCALL_X_REAL128/COMPLEX128(,write).
              (gfc_build_io_library_fndecls): Build decl for __float128 I/O.
              (transfer_expr): Call __float128 I/O functions.
              * trans-types.c (gfc_init_kinds): Allow kind-16 belonging
              to __float128.
      
      gcc/testsuite/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * gfortran.dg/quad_1.f90: New.
              * lib/gcc-defs.exp (gcc-set-multilib-library-path): Use also
              compiler arguments.
              * lib/gfortran.exp (gfortran_link_flags): Add libquadmath to
              library search path; call gcc-set-multilib-library-path with
              arguments such that libgfortran.spec is found.
              (gfortran_init): Add path for libgfortran.spec to
      GFORTRAN_UNDER_TEST.
      
      libgomp/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * configure.ac: 
              * configure: Regenerate.
      
      libgfortran/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * Makefile.am: Add missing pow_r16_i4.c, add transfer128.c,
              link libquadmath, if used.
              * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Add.
              * configure.ac: Use it, touch spec file.
              * gfortran.map: Add pow_r16_i4 and
              transfer_(real,complex)128(,write) functions.
              * intrinsics/cshift0.c (cshift0): Handle __float128 type.
              * intrinsics/erfc_scaled_inc.c: Ditto.
              * intrinsics/pack_generic.c (pack): Ditto
              * intrinsics/spread_generic.c (spread): Ditto.
              * intrinsics/unpack_generic.c (unpack1): Ditto.
              * io/read.c (convert_real): Ditto.
              * io/transfer.c: Update comments.
              * io/transfer128.c: New file.
              * io/write_float.def (write_float): Handle __float128 type.
              * libgfortran.h: #include quadmath_weak.h, define __builtin_infq
              and nanq.
              * m4/mtype.m4: Handle __float128 type.
              * runtime/in_pack_generic.c (internal_pack): Ditto.
              * runtime/in_unpack_generic.c (internal_unpack): Ditto.
              * kinds-override.h: New file.
              * libgfortran.spec.in: Ditto.
              * generated/pow_r16_i4.c: Generated.
              * Makefile.in: Regenerate.
              * configure: Regenerate.
              * config.h: Regenerate.
              * bessel_r10.c: Regenerate.
              * bessel_r16.c: Regenerate.
              * bessel_r4.c: Regenerate.
              * bessel_r8.c: Regenerate.
              * exponent_r16.c: Regenerate.
              * fraction_r16.c: Regenerate.
              * nearest_r16.c: Regenerate.
              * norm2_r10.c: Regenerate.
              * norm2_r16.c: Regenerate.
              * norm2_r4.c: Regenerate.
              * norm2_r8.c: Regenerate.
              * rrspacing_r16.c: Regenerate.
              * set_exponent_r16.c: Regenerate.
              * spacing_r16.c: Regenerate.
      
      
      Co-Authored-By: Tobias Burnus <burnus@net-b.de>
      
      From-SVN: r166825
      Francois-Xavier Coudert committed