Commit Graph

137319 Commits

Author SHA1 Message Date
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
Jan Hubicka 9a820e8446 invoke.texi (inline-unit-growth): Increase growth to 20%
* invoke.texi (inline-unit-growth): Increase growth to 20%
	* params.def (PARAM_INLINE_UNIT_GROWTH): Likewise.

From-SVN: r221868
2015-04-04 21:07:46 +00:00
Vladimir Makarov 9444692807 re PR target/65647 (GCC won't stop when compile for armv6-m)
2015-04-04  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/65647
	* lra-int.h (LRA_MAX_REMATERIALIZATION_PASSES): New.  Add its
	value checking.
	(lra_rematerialization_iter): New.
	* lra.c (lra): Initialize lra_rematerialization_iter.
	Stop updating lra_constraint_new_regno_start after switching of
	inheritance and rematerialization.
	* lra-remat.c (lra_rematerialization_iter): New.
	(lra_remat): Add printing pass iteration.  Do rematerialization
	only first LRA_MAX_REMATERIALIZATION_PASSES iterations.

2015-04-04  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/65647
	* gcc.target/arm/pr65647.c: New.

From-SVN: r221867
2015-04-04 14:35:59 +00:00
Richard Biener 30c5a937e1 re PR tree-optimization/64909 (Missed vectorization with bdver1)
2015-04-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/64909
	PR tree-optimization/65660
	* tree-vectorizer.h (vect_get_known_peeling_cost): Adjust
	to take a cost vector for scalar iteration cost.
	(vect_get_single_scalar_iteration_cost): Likewise.
	* tree-vect-loop.c (vect_get_single_scalar_iteration_cost):
	Compute the scalar iteration cost into a cost vector.
	(vect_get_known_peeling_cost): Use the scalar cost vector to
	account for the cost of the peeled iterations.
	(vect_estimate_min_profitable_iters): Likewise.
	* tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost):
	Likewise.

From-SVN: r221866
2015-04-04 10:47:08 +00:00
GCC Administrator 0da0c47dc5 Daily bump.
From-SVN: r221865
2015-04-04 00:16:11 +00:00
Alan Modra 69223faeb3 re PR target/65576 (ICE in gcc.c-torture/compile/pr33855.c)
PR target/65576
	PR target/65240
	* config/rs6000/predicates.md (zero_reg_mem_operand): Exclude
	0.0 constant unless TARGET_VSX.
	* config/rs6000/rs6000.md (extenddftf2_internal): Remove last
	alternative.

From-SVN: r221862
2015-04-04 09:46:26 +10:30
Jan Hubicka f107227ba7 re PR target/65648 (Bad code due to IRA fails to recognize the clobber in parallel)
PR ipa/65648
	* ipa-inline-transform.c (inline_call): Skip sanity check to work
	around the ICE

From-SVN: r221861
2015-04-03 20:25:01 +00:00
Jan Hubicka 872ceb28a1 re PR ipa/65655 (ICE in speculative_call_info, at cgraph.c:1151)
PR ipa/65655
	* ipa-inline-analysis.c (edge_set_predicate): Do not redirect
	speculative indirect edges to avoid ordering issue.
	* g++.dg/torture/pr65655.C: New testcase.

From-SVN: r221860
2015-04-03 18:19:53 +00:00
Jan Hubicka 133a84abb6 re PR ipa/65076 (16% tramp3d-v4.cpp compile time regression)
PR ipa/65076
	* ipa-inline.c (edge_badness): Add combined size to the denominator.

From-SVN: r221859
2015-04-03 18:09:13 +00:00
Paolo Carlini a3d94329e9 re PR c++/64085 (ICE on C++14 lambda by-reference capture with an initializer)
/cp
2015-04-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/64085
	* lambda.c (add_capture): Use dependent_type_p for capture by
	reference too.

/testsuite
2015-04-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/64085
	* g++.dg/cpp1y/lambda-init13.C: New.

From-SVN: r221858
2015-04-03 17:23:27 +00:00
Marek Polacek 1dc15b0b9d * g++.dg/cpp0x/pr57101.C: Use proper type for size_t.
From-SVN: r221855
2015-04-03 14:55:21 +00:00
Jakub Jelinek f74849783e omp-low.c (scan_omp_parallel, [...]): Set TYPE_ARTIFICIAL on the .omp_data* types.
* omp-low.c (scan_omp_parallel, scan_omp_task, scan_omp_target): Set
	TYPE_ARTIFICIAL on the .omp_data* types.

From-SVN: r221853
2015-04-03 15:35:49 +02:00
Ilya Enkovich a115251c2b cgraphunit.c (cgraph_node::expand_thunk): Don't expand instrumentation thunks.
* cgraphunit.c (cgraph_node::expand_thunk): Don't expand
	instrumentation thunks.

From-SVN: r221852
2015-04-03 09:00:53 +00:00
Ilya Enkovich fad71ff5e7 i386.c (ix86_expand_call): Avoid nested PARALLEL in returned call value.
* config/i386/i386.c (ix86_expand_call): Avoid nested
	PARALLEL in returned call value.

From-SVN: r221851
2015-04-03 08:51:26 +00:00
Ilya Enkovich a3d72251cc lto-cgraph.c (input_cgraph_1): Always link instrumented assembler name with original one.
* lto-cgraph.c (input_cgraph_1): Always link instrumented
	assembler name with original one.

From-SVN: r221850
2015-04-03 08:39:29 +00:00
GCC Administrator fb383fd288 Daily bump.
From-SVN: r221848
2015-04-03 00:16:13 +00:00
Uros Bizjak fcb8e42940 i386.c (ix86_register_priority): Use AX_REG.
* config/i386/i386.c (ix86_register_priority): Use AX_REG.

From-SVN: r221844
2015-04-02 19:33:22 +02:00
Marek Polacek 894bec6885 re PR c++/65642 ([C++11] GCC rejects valid constant expression)
PR c++/65642
	* constexpr.c (cxx_eval_pointer_plus_expression): Call
	cxx_eval_constant_expression on the first operand.

	* g++.dg/cpp0x/constexpr-fold1.C: New test.
	* g++.dg/cpp0x/constexpr-fold2.C: New test.

From-SVN: r221843
2015-04-02 16:51:27 +00:00
Jason Merrill 37978db4a7 re PR c++/65625 (ICE in make_typename_type, at cp/decl.c:3499)
PR c++/65625
	* decl.c (make_typename_type): Handle seeing a variable template.

From-SVN: r221842
2015-04-02 12:43:02 -04:00
Paolo Carlini c23a9ec5f4 2015-04-02 Paolo Carlini <paolo.carlini@oracle.com>
Complete commit.

From-SVN: r221841
2015-04-02 15:23:36 +00:00
Uros Bizjak 287044d972 Revert parts of r216820.
* config/i386/i386.md (movqi_internal): Correct type calculation
	for alternatives 3 and 5.

From-SVN: r221840
2015-04-02 14:22:16 +02:00
Jakub Jelinek b8cd77f40c re PR preprocessor/61977 (powerpc preprocessor breaks on lines that end with "vector")
PR preprocessor/61977
	* lex.c (cpp_peek_token): Temporarily clear pfile->cb.line_change.

	* gcc.target/powerpc/pr61977-1.c: New test.
	* gcc.target/powerpc/pr61977-2.c: New test.

From-SVN: r221839
2015-04-02 13:57:02 +02:00
Jakub Jelinek 860f8be450 re PR preprocessor/61977 (powerpc preprocessor breaks on lines that end with "vector")
PR preprocessor/61977
	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Don't
	predefine __vector/__bool/__pixel macros nor context sensitive
	macros for CLK_ASM.
	* config/spu/spu-c.c (spu_cpu_cpp_builtins): Similarly.

From-SVN: r221838
2015-04-02 13:54:58 +02:00
John David Anglin 166d826fdc pa.c (pa_output_move_double): Directly handle register indexed memory operand.
* config/pa/pa.c (pa_output_move_double): Directly handle register
	indexed memory operand.  Simplify handling of scaled register indexed
	memory operands.

From-SVN: r221835
2015-04-02 11:29:48 +00:00
James Greenhalgh e61ffb3b5a [Patch] Add myself as AArch64 Port Reviewer
* MAINTAINERS: Add myself as a reviewer for the AArch64 port.

From-SVN: r221834
2015-04-02 10:49:16 +00:00
Kyrylo Tkachov b16cc4f20c Add myself as reviewer for arm port
* MAINTAINERS: Add myself as an arm port reviewer.

From-SVN: r221833
2015-04-02 10:19:37 +00:00
Ilya Enkovich 512470bb90 re PR driver/65444 (-z bndplt isn't passed to linker for -mmpx when building dynamic objects)
gcc/
	PR driver/65444
	* config/i386/linux-common.h (MPX_SPEC): New.
	(CHKP_SPEC): Add MPX_SPEC.
	* doc/invoke.texi (-fcheck-pointer-boudns): Document
	possible issues with '-z bndplt' support in linker.

libmpx/

	PR driver/65444
	* configure.ac: Add check for '-z bndplt' support
	by linker. Add link_mpx output variable.
	* libmpx.spec.in (link_mpx): New.
	* configure: Regenerate.

From-SVN: r221831
2015-04-02 08:15:49 +00:00
Uros Bizjak a8caf35149 sync.md (UNSPEC_FILD_ATOMIC, [...]): New.
* config/i386/sync.md (UNSPEC_FILD_ATOMIC, UNSPEC_FIST_ATOMIC): New.
	(loaddi_via_fpu): Use UNSPEC_FILD_ATOMIC.
	(storedi_via_fpu): Use UNSPEC_FIST_ATOMIC.
	* reg-stack.c (get_true_reg): Change UNSPEC_LDA to UNSPEC_FILD_ATOMIC.
	(subst_stack_regs_pat): Change UNSPEC_STA to UNSPEC_FIST_ATOMIC.

From-SVN: r221830
2015-04-02 09:56:05 +02:00
Jan Hubicka ed6ef4907a lto-cgraph.c (lto_output_node, [...]): Stream split_part.
* lto-cgraph.c (lto_output_node, input_overwrite_node): Stream
	split_part.
	* ipa-inline.c (edge_badness): Add wrapper penalty.
	(sum_callers): Move up.
	(inline_small_functions): Set single_caller.
	* ipa-inline.h (inline_summary): Add single_caller.
	* ipa-split.c (split_function): Set split_part.
	(cgraph_node::create_clone): Do not shadow decl; copy split_part.
	* cgraph.h (cgraph_node): Add split_part.

From-SVN: r221818
2015-04-02 05:14:26 +00:00
GCC Administrator 709d77eab7 Daily bump.
From-SVN: r221817
2015-04-02 00:16:11 +00:00
Paolo Carlini b4d5e41f1d re PR c++/56100 (spurious -Wshadow warning with local variable in template class)
/cp
2015-04-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/56100
	* pt.c (instantiating_current_function_p): New.
	* name-lookup.c (pushdecl_maybe_friend_1): Use it.
	* cp-tree.h (instantiating_current_function_p): Declare.

/testsuite
2015-04-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/56100
	* g++.dg/warn/Wshadow-8.C: New.
	* g++.dg/warn/Wshadow-9.C: Likewise.
	* g++.dg/warn/Wshadow-10.C: Likewise.
	* g++.dg/warn/Wshadow-11.C: Likewise.

From-SVN: r221814
2015-04-01 21:27:55 +00:00
Uros Bizjak 35238bb505 sync.md (UNSPEC_MOVA): Remove.
* config/i386/sync.md (UNSPEC_MOVA): Remove.
	(atomic_load<mode>): Change operand 0 predicate to
	nonimmediate_operand and fix up the destination when needed.
	Use UNSPEC_LDA.
	(atomic_loaddi_fpu): Use UNSPEC_LDA.
	(atomic_store<mode>): Change operand 1 predicate to
	nonimmendate_operand and move the source to register when needed.
	Use UNSPEC_STA.
	(atomic_store<mode>_1): Use UNSPEC_STA.
	(atomic_storedi_fpu): Change operand 1 to nonimmediate_operand.
	Fix moves from memory operand.  Use UNSPEC_STA.

From-SVN: r221811
2015-04-01 19:36:24 +02:00
Jason Merrill f87cb0b734 re PR c++/65646 (ICE in invalid syntax)
PR c++/65646
	* decl.c (grokvardecl): Don't call check_explicit_specialization
	for non-template members of a class template.

From-SVN: r221810
2015-04-01 12:36:50 -04:00
Bernd Edlinger b6dd42a9a8 expmed.c (strict_volatile_bitfield_p): Check that the access will not cross a MODESIZE boundary.
gcc:
2015-04-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * expmed.c (strict_volatile_bitfield_p): Check that the access will
        not cross a MODESIZE boundary.
        (store_bit_field, extract_bit_field): Added assertions in the
        strict volatile bitfields code path.

testsuite:
2015-04-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * gcc.dg/pr23623.c: Added aligned attribute.
        * gcc.dg/20141029-1.c: Likewise.
        * gcc.dg/20150306-1.c: New test.

From-SVN: r221809
2015-04-01 16:09:48 +00:00
Marek Polacek 14e51ef293 re PR middle-end/65554 (ICE: verify_gimple failed)
PR c++/65554
	* class.c (finish_struct): Require that the second field of a
	user-defined initializer_list be of size type.

	* g++.dg/cpp0x/initlist93.C: New test.
	* g++.dg/cpp0x/initlist94.C: New test.

From-SVN: r221808
2015-04-01 13:08:05 +00:00