Commit Graph

137303 Commits

Author SHA1 Message Date
Ilya Enkovich
3ba99d8a03 mpx_wrappers.c (__mpx_wrapper_memmove): Add zero length check.
libmpx/

	* mpxwrap/mpx_wrappers.c (__mpx_wrapper_memmove): Add
	zero length check.

gcc/testsuite/

	* gcc.target/i386/mpx/memmove-zero-length.c: New.

From-SVN: r221944
2015-04-09 10:11:30 +00:00
Kirill Yukhin
54414978ae re PR target/65676 (ICE: in extract_insn, at recog.c:2343 (unrecognizable insn) with -mavx512f -funsigned-char and __builtin_ia32_pmovsxwq512_mask())
PR target/65676
gcc/
        * config/i386/i386.c (fixup_modeless_constant): New.
        (ix86_expand_args_builtin): Fixup modeless constant operand.
        PR target/65676
        * config/i386/i386.c (fixup_modeless_constant): New.
        (ix86_expand_args_builtin): Fixup modeless constant operand.
        (ix86_expand_round_builtin): Ditto.
        (ix86_expand_special_args_builtin): Ditto.
        (ix86_expand_builtin): Ditto.

gcc/testsuite/
        * gcc.target/i386/sse-25.c: New.
        (ix86_expand_round_builtin): Ditto.
        (ix86_expand_special_args_builtin): Ditto.
        (ix86_expand_builtin): Ditto.

testsuite/
        PR target/65676
        * gcc.target/i386/sse-25.c: New.

From-SVN: r221943
2015-04-09 09:11:27 +00:00
Jakub Jelinek
da0b9df9a8 re PR rtl-optimization/65693 (ICE in assign_by_spills, at lra-assigns.c:1419)
PR target/65693
	* config/i386/i386.md (*udivmod<mode>4_pow2): Allow
	any pow2 integer in between 2 and 0x80000000U inclusive.

	* gcc.target/i386/pr65693.c: New test.

From-SVN: r221942
2015-04-09 09:28:54 +02:00
Rainer Orth
9a165842d1 Update Solaris baselines
* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
	* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
	* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.

From-SVN: r221941
2015-04-09 07:05:41 +00:00
GCC Administrator
fee4fd4b30 Daily bump.
From-SVN: r221940
2015-04-09 00:16:12 +00:00
Segher Boessenkool
4673a218df re PR rtl-optimization/65693 (ICE in assign_by_spills, at lra-assigns.c:1419)
PR rtl-optimization/65693
	* combine.c (is_parallel_of_n_reg_sets): Change first argument
	from an rtx_insn * to an rtx.
	(try_combine): Adjust both callers.  Use it once more.

From-SVN: r221937
2015-04-09 00:52:24 +02:00
Jakub Jelinek
466df27b94 baseline_symbols.txt: Update.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
	* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.

From-SVN: r221933
2015-04-08 22:46:30 +02:00
Ilya Enkovich
36f371de39 tree-chkp.c (chkp_find_const_bounds_var): Remove.
gcc/

	* tree-chkp.c (chkp_find_const_bounds_var): Remove.
	(chkp_make_static_const_bounds): Search existing
	symbol by assembler name.  Use make_decl_one_only.
	(chkp_get_zero_bounds_var): Remove node	search which
	is now performed in chkp_make_static_const_bounds.
	(chkp_get_none_bounds_var): Likewise.

gcc/testsuite/

	* gcc.dg/lto/chkp-static-bounds_0.c: New.

From-SVN: r221932
2015-04-08 19:34:41 +00:00
Michael Witten
469f062eb9 extend.texi (Attribute Syntax): Add a trailing semicolon to an example.
* doc/extend.texi (Attribute Syntax): Add a trailing semicolon
	to an example.

From-SVN: r221931
2015-04-08 19:11:44 +00:00
Bernhard Reutner-Fischer
5884a1a875 tree.h: Commentary typo fix
2015-04-08  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

	* tree.h (CONVERT_EXPR_P): Commentary typo fix.

From-SVN: r221930
2015-04-08 20:41:55 +02:00
Cary Coutant
17feae99d5 Fix date in ChangeLog entry.
From-SVN: r221929
2015-04-08 11:29:29 -07:00
Cary Coutant
b68ba431eb MAINTAINERS: Update my email address.
2012-10-01  Cary Coutant  <ccoutant@gmail.com>

	* MAINTAINERS: Update my email address.

From-SVN: r221928
2015-04-08 11:27:32 -07:00
Gerald Pfeifer
8de4dd051f * doc/extend.texi (__sync Builtins): Fix grammar.
From-SVN: r221927
2015-04-08 18:27:20 +00:00
Bernhard Reutner-Fischer
5817d9f9b7 doc/cfg.texi (GIMPLE statement iterators): Fix typo
2015-04-08  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

	* doc/cfg.texi (GIMPLE statement iterators): Fix typo.

From-SVN: r221926
2015-04-08 20:09:11 +02:00
Bernhard Reutner-Fischer
a876b41036 emit_local(): Fix unused warning
Honzas r221269 produced

gcc/varasm.c:1936:7: error: unused variable ‘align’
[-Werror=unused-variable]
   int align = symtab_node::get (decl)->definition_alignment ();
       ^
on e.g.:

log/alpha64-dec-vms
log/alpha-dec-vms
log/i686-cygwinOPT-enable-threads=yes
log/i686-mingw32crt
log/i686-openbsd3.0
log/i686-pc-msdosdjgpp
log/m68k-openbsd

Silence this by moving the variable into the corresponding blocks and
adding back the ATTRIBUTE_UNUSED decoration for the decl param.

From-SVN: r221925
2015-04-08 19:56:18 +02:00
Julian Brown
d93bdab53b mkoffload.c (process): Support variable mapping.
gcc/
	* config/nvptx/mkoffload.c (process): Support variable mapping.

	libgomp/
	* libgomp.h (target_mem_desc: Remove mem_map field.
	(acc_dispatch_t): Remove open_device_func, close_device_func,
	get_device_num_func, set_device_num_func, target_data members.
	Change create_thread_data_func argument to device number instead of
	generic pointer.
	* oacc-async.c (assert.h): Include.
	(acc_async_test, acc_async_test_all, acc_wait, acc_wait_async)
	(acc_wait_all, acc_wait_all_async): Use current host thread's
	active device, not base_dev.
	* oacc-cuda.c (acc_get_current_cuda_device)
	(acc_get_current_cuda_context, acc_get_cuda_stream)
	(acc_set_cuda_stream): Likewise.
	* oacc-host.c (host_dispatch): Don't set open_device_func,
	close_device_func, get_device_num_func or set_device_num_func.
	* oacc-init.c (base_dev, init_key): Remove.
	(cached_base_dev): New.
	(name_of_acc_device_t): New.
	(acc_init_1): Initialise default-numbered device, not zeroth.
	(acc_shutdown_1): Close all devices of a given type.
	(goacc_destroy_thread): Don't use base_dev.
	(lazy_open, lazy_init, lazy_init_and_open): Remove.
	(goacc_attach_host_thread_to_device): New.
	(acc_init): Reimplement with goacc_attach_host_thread_to_device.
	(acc_get_num_devices): Don't use base_dev.
	(acc_set_device_type): Reimplement.
	(acc_get_device_type): Don't use base_dev.
	(acc_get_device_num): Tweak logic.
	(acc_set_device_num): Likewise.
	(acc_on_device): Use acc_get_device_type.
	(goacc_runtime_initialize): Initialize cached_base_dev not base_dev.
	(goacc_lazy_initialize): Reimplement with acc_init and
	goacc_attach_host_thread_to_device.
	* oacc-int.h (goacc_thread): Add base_dev field.
	(base_dev): Remove extern declaration.
	(goacc_attach_host_thread_to_device): Add prototype.
	* oacc-mem.c (acc_malloc): Use current thread's device instead of
	base_dev.
	(acc_free): Likewise.
	(acc_memcpy_to_device): Likewise.
	(acc_memcpy_from_device): Likewise.
	* oacc-parallel.c (select_acc_device): Remove. Replace calls with
	goacc_lazy_initialize (throughout).
	(GOACC_parallel): Use tgt_offset to locate target functions.
	* target.c (gomp_map_vars): Don't set tgt->mem_map.
	(gomp_unmap_vars): Use devicep->mem_map pointer not tgt->mem_map.
	(gomp_load_plugin_for_device): Remove open_device, close_device,
	get_device_num, set_device_num openacc hook initialisation. Don't set
	openacc.target_data.
	* plugin/plugin-host.c (GOMP_OFFLOAD_openacc_open_device)
	(GOMP_OFFLOAD_openacc_close_device)
	(GOMP_OFFLOAD_openacc_get_device_num)
	(GOMP_OFFLOAD_openacc_set_device_num): Remove.
	(GOMP_OFFLOAD_openacc_create_thread_data): Change (unused) argument
	to int.
	* plugin/plugin-nvptx.c (ptx_inited): Remove.
	(instantiated_devices, ptx_dev_lock): New.
	(struct ptx_image_data): New.
	(ptx_devices, ptx_images, ptx_image_lock): New.
	(fini_streams_for_device): Reorder cuStreamDestroy call.
	(nvptx_get_num_devices): Remove forward declaration.
	(nvptx_init): Change return type to bool.
	(nvptx_fini): Remove.
	(nvptx_attach_host_thread_to_device): New.
	(nvptx_open_device): Return struct ptx_device* instead of void*.
	(nvptx_close_device): Change argument type to struct ptx_device*,
	return type to void.
	(nvptx_get_num_devices): Use instantiated_devices not ptx_inited.
	(kernel_target_data, kernel_host_table): Remove static globals.
	(GOMP_OFFLOAD_register_image, GOMP_OFFLOAD_get_table): Remove.
	(GOMP_OFFLOAD_init_device): Reimplement.
	(GOMP_OFFLOAD_fini_device): Likewise.
	(GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New.
	(GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free, GOMP_OFFLOAD_dev2host)
	(GOMP_OFFLOAD_host2dev): Use ORD argument.
	(GOMP_OFFLOAD_openacc_open_device)
	(GOMP_OFFLOAD_openacc_close_device)
	(GOMP_OFFLOAD_openacc_set_device_num)
	(GOMP_OFFLOAD_openacc_get_device_num): Remove.
	(GOMP_OFFLOAD_openacc_create_thread_data): Change argument to int
	(device number).

	libgomp/testsuite/
	* libgomp.oacc-c-c++-common/lib-9.c: Fix devnum check in test.

From-SVN: r221922
2015-04-08 15:58:33 +00:00
Trevor Saunders
a6330e856f fix building for alpha-dec-vms
gcc/

	* config/alpha/alpha.c (alpha_use_linkage): Change type of slot to
	alpha_links **.
	(alpha_write_one_linkage): Correct typo.

From-SVN: r221921
2015-04-08 14:58:39 +00:00
Ian Lance Taylor
5d22575b1b mksysinfo.sh: Define Solaris zone_net_addr_t struct.
From Rainer Orth.

From-SVN: r221920
2015-04-08 14:17:13 +00:00
Ilya Enkovich
930ee1165d ipa-comdats.c (propagate_comdat_group): Walk through thunks.
gcc/

	* ipa-comdats.c (propagate_comdat_group): Walk through thunks.

gcc/testsuite/

	* gcc.target/i386/mpx/chkp-thunk-comdat-3.c: New.

From-SVN: r221919
2015-04-08 13:45:20 +00:00
Gerald Pfeifer
47eec99462 * doc/install.texi (bootstrap-lto-noplugin): Rewrite.
From-SVN: r221918
2015-04-08 12:12:08 +00:00
Ilya Enkovich
4f5a53cc31 tree-chkp.h (chkp_insert_retbnd_call): New.
gcc/

	* tree-chkp.h (chkp_insert_retbnd_call): New.
	* tree-chkp.c (chkp_insert_retbnd_call): New.
	* ipa-split.c (insert_bndret_call_after): Remove.
	(split_function): Use chkp_insert_retbnd_call.
	* cgraphunit.c (cgraph_node::expand_thunk): Build returned
	bounds for instrumented functions.

gcc/testsuite/

	* gcc/testsuite/gcc.target/i386/thunk-retbnd.c: New.

From-SVN: r221917
2015-04-08 10:44:59 +00:00
Eric Botcazou
113c69ff2d decl.c (gnat_to_gnu_entity): Do not make a function returning an unconstrained type 'const' for the middle-end.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Do not make
	a function returning an unconstrained type 'const' for the middle-end.

	* gcc-interface/trans.c (Pragma_to_gnu) <case Pragma_Warning>: Use
	exact condition to detect Reason => "..." pattern.

From-SVN: r221916
2015-04-08 09:08:12 +00:00
GCC Administrator
43941fa55c Daily bump.
From-SVN: r221914
2015-04-08 00:16:11 +00:00
Jan Hubicka
006e317a14 re PR ipa/65540 (internal error on s-fatllf.ads at -O2)
PR ipa/65540
	* calls.c (initialize_argument_information): When producing tail
	call also turn SSA_NAMES passed by references to original PARM_DECLs
	* gcc.c-torture/compile/pr65540.c: New.

From-SVN: r221910
2015-04-07 21:02:12 +00:00
Joseph Myers
4209b6d00f * da.po: Update.
From-SVN: r221909
2015-04-07 21:46:12 +01:00
Joseph Myers
5612a814f5 * da.po: Update.
From-SVN: r221908
2015-04-07 21:40:01 +01:00
Ian Lance Taylor
4bcd34f6ad re PR go/63731 (Fallback to netgo does not work)
PR go/63731
libgo: Build and install libnetgo.a

libnetgo.a provides the net
package built with the netgo
tag enabled.  This provides the
netgo fallback solution for gccgo.
This lib must be explicitly linked
in using the -gccgoflags, so is
not included by default.

From-SVN: r221906
2015-04-07 18:09:28 +00:00
Alan Lawrence
293da85bc3 [AArch64] Fix gcc.target/aarch64/c-output-template-3.c
gcc.target/aarch64/c-output-template-3.c: Add -O, remove
	-Wno-pointer-arith.

From-SVN: r221905
2015-04-07 17:28:12 +00:00
Joseph Myers
0a4ff641fc gcc.pot: Regenerate.
gcc/po:
	* gcc.pot: Regenerate.

libcpp/po:
	* cpplib.pot: Regenerate.

From-SVN: r221904
2015-04-07 16:59:24 +01:00
Jakub Jelinek
a9d13adfef Fix up 2 ChangeLog PR number typos.
From-SVN: r221902
2015-04-07 17:10:14 +02:00
Vladimir Makarov
218823d74e re PR debug/65678 (internal compiler error: in gen_rtx_SUBREG, at emit-rtl.c:909)
2015-04-07  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/65678
	* lra-remat.c (do_remat): Process input and non-input insn
	registers separately.

From-SVN: r221901
2015-04-07 15:01:07 +00:00
Jakub Jelinek
e488c24ec0 re PR debug/65678 (internal compiler error: in gen_rtx_SUBREG, at emit-rtl.c:909)
PR debug/65678
	* valtrack.c (debug_lowpart_subreg): New function.
	(dead_debug_insert_temp): Use it.

	* g++.dg/debug/pr65678.C: New test.

From-SVN: r221900
2015-04-07 16:35:18 +02:00
Jakub Jelinek
dcc72b9e73 re PR middle-end/65680 (ICE at -O1 and above on x86_64-linux-gnu in expand_assignment, at expr.c:4830)
PR middle-end/65680
	* expr.c (get_inner_reference): Handle bit_offset that doesn't fit
	into signed HOST_WIDE_INT the same as negative bit_offset.

	* gcc.c-torture/compile/pr65680.c: New test.

From-SVN: r221899
2015-04-07 16:34:06 +02:00
Andre Vehreschild
440f9408ea re PR fortran/65548 (gfc_conv_procedure_call)
PR fortran/65548
        * gfortran.dg/allocate_with_source_5.f90: New test.

        * trans-stmt.c (gfc_trans_allocate): For intrinsic functions
        use conv_expr_descriptor() instead of conv_expr_reference().

From-SVN: r221897
2015-04-07 16:10:43 +02:00
Ilya Enkovich
0e081bde91 ipa-comdats.c (ipa_comdats): Visit all thunks to set proper comdat group.
gcc/

	* ipa-comdats.c (ipa_comdats): Visit all thunks
	to set proper comdat group.

gcc/testsuite/

	* gcc.target/i386/mpx/chkp-thunk-comdat-1.cc: New.
	* gcc.target/i386/mpx/chkp-thunk-comdat-2.cc: New.

From-SVN: r221896
2015-04-07 14:06:38 +00:00
Gerald Pfeifer
23ebaa42a2 update_web_docs_libstdcxx_svn (FILTER): Introduce.
* update_web_docs_libstdcxx_svn (FILTER): Introduce.
	Use to filter output of the copying process.

From-SVN: r221893
2015-04-07 11:46:23 +00:00
Kyrylo Tkachov
b7c43e2429 [ARM] PR 65489: Accept VSTRUCT constants in arm_legitimate_constant_p
PR target/65489
	* config/arm/arm.c (arm_legitimate_constant_p_1): Remove restriction
	on constants for NEON VSTRUCT modes.

From-SVN: r221892
2015-04-07 10:24:19 +00:00
Jakub Jelinek
e8a4ed3b9d re PR target/65351 (libiberty's pic version contains non-pic code on m32 darwin; causes bootstrap fail building libcc1.)
PR target/65351
config/
	* picflag.m4: Append -mno-dynamic-no-pic for Darwin.
libiberty/
	* configure: Regenerate.
libada/
	* configure: Regenerate.
libgcc/
	* configure: Regenerate.
gcc/
	* configure: Regenerate.

Co-Authored-By: Iain Sandoe <iain@codesourcery.com>

From-SVN: r221891
2015-04-07 11:57:46 +02:00
Bin Cheng
16a2968875 pr65647.c: Add option "-mfloat-abi=soft".
gcc/testsuite/ChangeLog
	* gcc.target/arm/pr65647.c: Add option "-mfloat-abi=soft".

From-SVN: r221889
2015-04-07 08:57:59 +00:00
Michael Meissner
90e0a7020e re PR target/65614 (PowerPC VSX systems should use XSCPSGNDP to copy scalar fp data to/from Altivec registers)
[gcc]
2015-04-06  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/65614
	* config/rs6000/rs6000.c (struct processor_costs): Add cost field
	for SF->DF conversions to make FLOAT_EXTEND more expensive, so
	that LFD is used to load double constants instead of LFS.  Add
	defaults for all costs structures.  Add comments for missing
	initialization fields.
	(size32_cost): Likewise.
	(size64_cost): Likewise.
	(rs64a_cost): Likewise.
	(mpccore_cost): Likewise.
	(ppc403_cost): Likewise.
	(ppc405_cost): Likewise.
	(ppc440_cost): Likewise.
	(ppc476_cost): Likewise.
	(ppc601_cost): Likewise.
	(ppc603_cost): Likewise.
	(ppc604_cost): Likewise.
	(ppc604e_cost): Likewise.
	(ppc620_cost): Likewise.
	(ppc630_cost): Likewise.
	(ppccell_cost): Likewise.
	(ppc750_cost): Likewise.
	(ppc7450_cost): Likewise.
	(ppc8540_cost): Likewise.
	(ppce300c2c3_cost): Likewise.
	(ppce500mc_cost): Likewise.
	(ppce500mc64_cost): Likewise.
	(ppce5500_cost): Likewise.
	(ppce6500_cost): Likewise.
	(titan_cost): Likewise.
	(power4_cost): Likewise.
	(power6_cost): Likewise.
	(power7_cost): Likewise.
	(power8_cost): Likewise.
	(ppca2_cost): Likewise.
	(rs6000_rtx_costs): Make FLOAT_EXTEND use SFDF_convert field.

	* config/rs6000/rs6000.md (extendsfdf2_fpr): Generate XSCPSGNDP
	instead of XXLOR to copy SFmode to clear out dirty bits created
	when SFmode denormals are generated.
	(mov<mode>_hardfloat, FMOVE32 case): Likewise.
	(truncdfsf2_fpr): Add support for ISA 2.07 XSRSP instruction.

[gcc/testsuite]
2015-04-06  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/65614
	* gcc.target/powerpc/compress-float-ppc-pic.c: Run test on power5
	to get floating point compression.
	* gcc.target/powerpc/compress-foat-ppc.c: Likewise.

From-SVN: r221888
2015-04-07 03:36:05 +00:00
GCC Administrator
68b3d8c987 Daily bump.
From-SVN: r221887
2015-04-07 00:16:16 +00:00
Evandro Menezes
85bb7f7f02 add option for the Samsung Exynos M1 core for AArch64
* doc/invoke.texi (AARCH64/mtune): Add exynos-m1 as an option.
	* config/aarch64/aarch64-cores.def (exynos-m1): New core.
	* config/aarch64/aarch64-tune.md: Regenerate.

From-SVN: r221884
2015-04-06 19:19:43 +00:00
Evandro Menezes
e278ae6fdc add option for the Samsung Exynos M1 core
* doc/invoke.texi (ARM/mtune): Add "exynos-m1" as an option.
	* config/arm/arm.c (arm_issue_rate): Specify "3" for "exynosm1".
	* config/arm/arm-cores.def (exynos-m1): New core.
	* config/arm/arm-tune.md: Regenerate.
	* config/arm/arm-tables.opt: Add entry for "exynos-m1".
	* config/arm/bpabi.h: Likewise.

From-SVN: r221883
2015-04-06 19:19:34 +00:00
Jakub Jelinek
e4b33ee5e4 re PR preprocessor/61977 (powerpc preprocessor breaks on lines that end with "vector")
PR preprocessor/61977
	* lex.c (cpp_peek_token): If peektok is CPP_EOF, back it up
	with all tokens peeked by the current function.

	* gcc.dg/cpp/pr61977.c: New test.

From-SVN: r221882
2015-04-06 19:01:50 +02:00
Ilya Enkovich
6f0250431c ipa-cp (set_single_call_flag): Remove too restrictive assert.
* ipa-cp (set_single_call_flag): Remove too
	restrictive assert.

From-SVN: r221880
2015-04-06 15:58:37 +00:00
Ilya Verbin
a51df54e48 libgomp: rework initialization of offloading
gcc/
	* config/i386/intelmic-mkoffload.c (generate_host_descr_file): Call
	GOMP_offload_unregister from the destructor.
libgomp/
	* libgomp-plugin.h (struct mapping_table): Replace with addr_pair.
	* libgomp.h (struct gomp_memory_mapping): Remove.
	(struct target_mem_desc): Change type of mem_map from
	gomp_memory_mapping * to splay_tree_s *.
	(struct gomp_device_descr): Remove register_image_func, get_table_func.
	Add load_image_func, unload_image_func.
	Change type of mem_map from gomp_memory_mapping to splay_tree_s.
	Remove offload_regions_registered.
	(gomp_init_tables): Remove.
	(gomp_free_memmap): Change type of argument from gomp_memory_mapping *
	to splay_tree_s *.
	* libgomp.map (GOMP_4.0.1): Add GOMP_offload_unregister.
	* oacc-host.c (host_dispatch): Do not initialize register_image_func,
	get_table_func, mem_map.is_initialized, mem_map.splay_tree.root,
	offload_regions_registered.
	Initialize load_image_func, unload_image_func, mem_map.root.
	(goacc_host_init): Do not initialize host_dispatch.mem_map.lock.
	* oacc-init.c (lazy_open): Don't call gomp_init_tables.
	(acc_shutdown_1): Use dev's lock and splay_tree instead of mem_map's.
	* oacc-mem.c (lookup_host): Get gomp_device_descr *dev instead of
	gomp_memory_mapping *.  Use dev's lock and splay_tree.
	(lookup_dev): Use dev's lock.
	(acc_deviceptr): Pass dev to lookup_host instead of mem_map.
	(acc_is_present): Likewise.
	(acc_map_data): Likewise.
	(acc_unmap_data): Likewise.  Use dev's lock.
	(present_create_copy): Likewise.
	(delete_copyout): Pass dev to lookup_host instead of mem_map.
	(update_dev_host): Likewise.
	(gomp_acc_remove_pointer): Likewise.  Use dev's lock.
	* oacc-parallel.c (GOACC_parallel): Use dev's lock and splay_tree.
	* plugin/plugin-host.c (GOMP_OFFLOAD_register_image): Remove.
	(GOMP_OFFLOAD_get_table): Remove
	(GOMP_OFFLOAD_load_image): New function.
	(GOMP_OFFLOAD_unload_image): New function.
	* target.c (register_lock): New mutex for offload image registration.
	(num_devices): Do not guard with PLUGIN_SUPPORT.
	(gomp_realloc_unlock): New static function.
	(gomp_map_vars_existing): Add device descriptor argument.  Unlock mutex
	before gomp_fatal.
	(gomp_map_vars): Use dev's lock and splay_tree instead of mem_map's.
	Pass devicep to gomp_map_vars_existing.  Unlock mutex before gomp_fatal.
	(gomp_copy_from_async): Use dev's lock and splay_tree instead of
	mem_map's.
	(gomp_unmap_vars): Likewise.
	(gomp_update): Remove gomp_memory_mapping argument.  Use dev's lock and
	splay_tree instead of mm's.  Unlock mutex before gomp_fatal.
	(gomp_offload_image_to_device): New static function.
	(GOMP_offload_register): Add mutex lock.
	Call gomp_offload_image_to_device for all initialized devices.
	Replace gomp_realloc with gomp_realloc_unlock.
	(GOMP_offload_unregister): New function.
	(gomp_init_tables): Replace with gomp_init_device.  Replace a call to
	get_table_func from the plugin with calls to init_device_func and
	gomp_offload_image_to_device.
	(gomp_free_memmap): Change type of argument from gomp_memory_mapping *
	to splay_tree_s *.
	(GOMP_target): Do not call gomp_init_tables.  Use dev's lock and
	splay_tree instead of mem_map's.  Unlock mutex before gomp_fatal.
	(GOMP_target_data): Do not call gomp_init_tables.
	(GOMP_target_update): Likewise.  Remove argument from gomp_update.
	(gomp_load_plugin_for_device): Replace register_image and get_table
	with load_image and unload_image in DLSYM ().
	(gomp_register_images_for_device): Remove function.
	(gomp_target_init): Do not initialize current_device.mem_map.*,
	current_device.offload_regions_registered.
	Remove call to gomp_register_images_for_device.
	Do not free offload_images and num_offload_images.
liboffloadmic/
	* plugin/libgomp-plugin-intelmic.cpp: Include map.
	(AddrVect, DevAddrVect, ImgDevAddrMap): New typedefs.
	(num_devices, num_images, address_table): New static vars.
	(num_libraries, lib_descrs): Remove static vars.
	(set_mic_lib_path): Rename to ...
	(init): ... this.  Allocate address_table and get num_devices.
	(GOMP_OFFLOAD_get_num_devices): return num_devices.
	(load_lib_and_get_table): Remove static function.
	(offload_image): New static function.
	(GOMP_OFFLOAD_get_table): Remove function.
	(GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New functions.

From-SVN: r221878
2015-04-06 12:40:28 +00:00
Ilya Enkovich
71671f5d52 ipa-chkp.c (chkp_maybe_create_clone): Reset cdtor flags for instrumentation thunk.
gcc/

	* ipa-chkp.c (chkp_maybe_create_clone): Reset cdtor
	flags for instrumentation thunk.
	(chkp_produce_thunks): Likewise.

gcc/testsuite/

	* gcc.dg/lto/chkp-ctor-merge_0.c: New.

From-SVN: r221877
2015-04-06 10:41:55 +00:00
GCC Administrator
f1e5203841 Daily bump.
From-SVN: r221876
2015-04-06 00:16:11 +00:00
Martin Liska
8fc8c7e7d1 re PR middle-end/65665 (g++.dg/torture/pr64378.C -O2 -flto -fno-use-linker-plugin -flto-partition=none)
Fix PR ipa/65665

	PR ipa/65665
	* ipa-icf.c (sem_function::equals_wpa): Verify that IPA CP
	has computed data structure.
	(sem_item_optimizer::update_hash_by_addr_refs): Likewise.

From-SVN: r221872
2015-04-05 17:17:29 +00:00
GCC Administrator
7870a3118b Daily bump.
From-SVN: r221871
2015-04-05 00:16:11 +00:00