Adjust options for use of Neon with multilib testing.

2014-06-25  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	* gcc.target/arm/vect-noalign.c: Adjust options.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211969 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-25  Richard Biener  <rguenther@suse.de>

	PR testsuite/61560
	* gcc.dg/tree-ssa/ssa-fre-32.c: Change to avoid differences
	for targets that return _Complex float in memory.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211970 138bc75d-0d04-0410-961f-82ee72b054a4
	* langhooks-def.h (LANG_HOOKS_OMP_CLAUSE_LINEAR_CTOR): Define.
	(LANG_HOOKS_DECLS): Add it.
	* gimplify.c (gimplify_omp_for): Make sure OMP_CLAUSE_LINEAR_STEP
	has correct type.
	* tree.h (OMP_CLAUSE_LINEAR_ARRAY): Define.
	* langhooks.h (struct lang_hooks_for_decls): Add
	omp_clause_linear_ctor hook.
	* omp-low.c (lower_rec_input_clauses): Set max_vf even if
	OMP_CLAUSE_LINEAR_ARRAY is set.  Don't fold_convert
	OMP_CLAUSE_LINEAR_STEP.  For OMP_CLAUSE_LINEAR_ARRAY in
	combined simd loop use omp_clause_linear_ctor hook.
gcc/c/
	* c-typeck.c (c_finish_omp_clauses): Make sure
	OMP_CLAUSE_LINEAR_STEP has correct type.
gcc/cp/
	* semantics.c (finish_omp_clauses): Make sure
	OMP_CLAUSE_LINEAR_STEP has correct type.
gcc/fortran/
	* trans.h (gfc_omp_clause_linear_ctor): New prototype.
	* trans-openmp.c (gfc_omp_linear_clause_add_loop,
	gfc_omp_clause_linear_ctor): New functions.
	(gfc_trans_omp_clauses): Make sure OMP_CLAUSE_LINEAR_STEP has
	correct type.  Set OMP_CLAUSE_LINEAR_ARRAY flag if needed.
	* f95-lang.c (LANG_HOOKS_OMP_CLAUSE_LINEAR_CTOR): Redefine.
libgomp/
	* testsuite/libgomp.fortran/simd5.f90: New test.
	* testsuite/libgomp.fortran/simd6.f90: New test.
	* testsuite/libgomp.fortran/simd7.f90: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211971 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/v850/v850.c (GHS_default_section_names): Change to const
	char * type.
	(GHS_current_section_names): Likewise.
	(v850_insert_attributes): Do not build strings, just assign the
	names directly.  Change the type of 'chosen_section' to const
	char*.
	* config/v850/v850-c.c (ghs_pragma_section): Assign the alias
	directly to the array entry.
	* config/v850/v850.h (GHS_default_section_names): Change to const
	char * type.
	(GHS_current_section_names): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211972 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-25  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/57742
gcc/
	* tree-ssa-strlen.c (handle_builtin_memset): Update strinfo
	after replacing the statement.
gcc/testsuite/
	* gcc.dg/tree-ssa/calloc-3.c: New file.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211977 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c/61162
	* c-parser.c (c_parser_statement_after_labels): Pass the location of
	the return expression to c_finish_return.

	* gcc.dg/pr61162.c: Adjust dg-warning.
	* gcc.dg/pr61162-2.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211978 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-25  Martin Jambor  <mjambor@suse.cz>

	* g++.dg/ipa/pr61540.C: Remove dumping test.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211980 138bc75d-0d04-0410-961f-82ee72b054a4
/cp
2014-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

	DR 178
	PR c++/49132
	* typeck2.c (process_init_constructor_record): Do not complain about
	uninitialized const members, because within aggregate-initialization,
	members without explicit initializers are value-initialized.

/testsuite
2014-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

	DR 178
	PR c++/49132
	* g++.dg/cpp0x/aggr1.C: New.
	* g++.dg/cpp0x/aggr2.C: Likewise.
	* g++.dg/init/aggr11.C: Likewise.
	* g++.dg/init/aggr12.C: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211981 138bc75d-0d04-0410-961f-82ee72b054a4
        * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Replace
        implementation with call to...
        * config/rs6000/rs6000.c (rs6000_xcoff_declare_function_name): New
        function.
        * config/rs6000/rs6000-protos.h (rs6000_xcoff_declare_function_name):
        Declare.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211982 138bc75d-0d04-0410-961f-82ee72b054a4
fix checking=fold

gcc/

        PR bootstrap/61598
        * fold-const.c (fold_checksum_tree): Use a hash_table of const
        tree_node * instead of tree_node *.
        (fold): Adjust.
        (print_fold_checksum): Likewise.
        (fold_check_failed): Likewise.
        (debug_fold_checksum): Likewise.
        (fold_build1_stat_loc): Likewise.
        (fold_build2_stat_loc): Likewise.
        (fold_build3_stat_loc): Likewise.
        (fold_build_call_array_loc): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211985 138bc75d-0d04-0410-961f-82ee72b054a4
fix typo in winnt.c

gcc/

	PR c/61612
	* config/i386/winnt.c (i386_find_on_wrapper_list): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211986 138bc75d-0d04-0410-961f-82ee72b054a4
IPA REF refactoring

	* Makefile.in: Removed header file (ipa-ref-inline.h).
	* cgraph.c (cgraph_turn_edge_to_speculative): New IPA REF function
	called.
	(cgraph_speculative_call_info): Likewise.
	(cgraph_for_node_thunks_and_aliases): Likewise.
	(cgraph_for_node_and_aliases): Likewise.
	(verify_cgraph_node): Likewise.
	* cgraph.h: Batch of IPA REF functions become member functions of
	symtab_node: add_reference, maybe_add_reference, clone_references,
	clone_referring, clone_reference, find_reference,
	remove_stmt_references, remove_all_references,
	remove_all_referring, dump_references, dump_referring,
	has_alias_p, iterate_reference, iterate_referring.
	* cgraphbuild.c (record_reference): New IPA REF function used.
	(record_type_list): Likewise.
	(record_eh_tables): Likewise.
	(mark_address): Likewise.
	(mark_load): Likewise.
	(mark_store): Likewise.
	(pass_build_cgraph_edges): Likewise.
	(rebuild_cgraph_edge): Likewise.
	(cgraph_rebuild_references): Likewise.
	(pass_remove_cgraph_callee_edges): Likewise.
	* cgraphclones.c (cgraph_clone_node): Likewise.
	(cgraph_create_virtual_clone): Likewise.
	(cgraph_materialize_clone): Likewise.
	(cgraph_materialize_all_clones): Likewise.
	* cgraphunit.c (cgraph_reset_node): Likewise.
	(cgraph_reset_node): Likewise.
	(analyze_function): Likewise.
	(assemble_thunks_and_aliases): Likewise.
	(expand_function): Likewise.
	* ipa-comdats.c (propagate_comdat_group): Likewise.
	(enqueue_references): Likewise.
	* ipa-cp.c (ipcp_discover_new_direct_edges): Likewise.
	(create_specialized_node): Likewise.
	* ipa-devirt.c (referenced_from_vtable_p): Likewise.
	* ipa-inline-transform.c (can_remove_node_now_p_1): Likewise.
	* ipa-inline.c (reset_edge_caches): Likewise.
	(update_caller_keys): Likewise.
	(execute): Likewise.
	* ipa-prop.c (remove_described_reference): Likewise.
	(propagate_controlled_uses): Likewise.
	(ipa_edge_duplication_hook): Likewise.
	(ipa_modify_call_arguments): Likewise.
	* ipa-pure-const.c (propagate_pure_const): Likewise.
	* ipa-ref-inline.h: Header file removed, functions moved
	to symtab_node class.
	* ipa-ref.c (remove_reference): New class member function.
	(cannot_lead_to_return): New class member function.
	(referring_ref_list): Likewise.
	(referred_ref_list): Likewise.
	Rest of functions moved to symtab_node class.
	* ipa-ref.h: New member functions remove_reference,
	cannot_lead_to_return, referring_ref_list, referred_ref_list added
	to ipa_ref class.
	ipa_ref_list class has new member functions: first_reference,
	first_referring, clear, nreferences.
	* ipa-reference.c (analyze_function): New IPA REF function used.
	(write_node_summary_p): Likewise.
	(ipa_reference_write_optimization_summary): Likewise.
	* ipa-split.c (split_function): Likewise.
	* ipa-utils.c (ipa_reverse_postorder): Likewise.
	* ipa-visibility.c (cgraph_non_local_node_p_1): Likewise.
	(function_and_variable_visibility): Likewise.
	* ipa.c (has_addr_references_p): Likewise.
	(process_references): Argument type changed.
	(symtab_remove_unreachable_nodes): New IPA REF function used.
	(process_references): Likewise.
	(set_writeonly_bit): Likewise.
	* lto-cgraph.c: Implementation of new symtab_node member functions
	that uses new IPA REF functions.
	* lto-streamer-in.c (fixup_call_stmt_edges_1): New IPA REF function used.
	* lto-streamer-out.c (output_symbol_p): Likewise.
	* lto-streamer.h (referenced_from_this_partition_p): Argument type
	changed.
	* lto/lto-partition.c (add_references_to_partition): New IPA REF function
	used.
	(add_symbol_to_partition_1): Likewise.
	(lto_balanced_map): Likewise.
	* lto/lto-symtab.c (lto_cgraph_replace_node): Likewise.
	* symtab.c: Implementation of new IPA REF API.
	* trans-mem.c (ipa_tm_create_version_alias): New IPA REF function used.
	(ipa_tm_create_version): Likewise.
	(ipa_tm_execute): Likewise.
	* tree-emutls.c (gen_emutls_addr): Likewise.
	* tree-inline.c (copy_bb): Likewise.
	(delete_unreachable_blocks_update_callgraph): Likewise.
	* varpool.c (varpool_remove_unreferenced_decls): Likewise.
	(varpool_for_node_and_aliases): Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211987 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-25  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * tree-ssa-forwprop.c (associate_plusminus): For widening conversions
        check for undefined overflow in (T)(P + A) - (T)P -> (T)A.
        Issue a strict overflow warning if appropriate.

testsuite:
2014-06-25  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * gcc.c-torture/execute/20140622-1.c: New test.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211988 138bc75d-0d04-0410-961f-82ee72b054a4
Remove superfluous clobber of cc in arm_emit_call_insn

2014-06-25  Tom de Vries  <tom@codesourcery.com>

	* config/arm/arm.c (arm_emit_call_insn): Remove clobber of CC_REGNUM.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211990 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/fortran/
2014-06-25  Tobias Burnus  <burnus@net-b.de>

        * check.c (check_co_minmaxsum): Add definable check.
        * expr.c (gfc_check_vardef_context): Fix context == NULL case.
        * trans-expr.c (get_scalar_to_descriptor_type): Handle pointer
        arguments.
        * trans-intrinsic.c (gfc_conv_intrinsic_caf_get): Fix generation
        of temporary strings.

gcc/testsuite/
2014-06-25  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_collectives_7.f90: New.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211992 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-25  Tobias Burnus  <burnus@net-b.de>

fortran/
        * resolve.c (resolve_ordinary_assign): Don't invoke caf_send
        when assigning a coindexed RHS scalar to a noncoindexed LHS
        array.
        * trans-intrinsic.c (conv_caf_send): Do numeric type conversion
        for a noncoindexed scalar RHS.

gcc/testsuite/
        * gfortran.dg/coarray/coindexed_1.f90: New.

libgfortran/
        * caf/single.c (assign_char4_from_char1,
        * assign_char1_from_char4,
        convert_type): New static functions.
        (_gfortran_caf_get, _gfortran_caf_send): Use them.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211993 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/fortran/
2014-06-25  Tobias Burnus  <burnus@net-b.de>

        * interface.c (check_intents): Fix diagnostic with
        coindexed coarrays.

gcc/testsuite/
2014-06-25  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_33.f90: New.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211994 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
	* include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
	* include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
	Likewise.
	* include/ext/alloc_traits.h: Fix comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211995 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/Makefile.am: Add new header.
	* include/Makefile.in: Regenerate.
	* include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
	New RAII utilities for working with allocators.
	* include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
	__allocator_type typedef and use new __allocated_ptr type.
	(_Sp_counted_ptr_inplace): Likewise.
	(__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
	__allocate_guarded to to simplify exception handling.
	* include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
	* include/std/future (_Result_alloc::_M_destroy): Likewise.
	(_Result_alloc::_S_allocate_result): Likewise.
	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
	* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
	* testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
	with fancy pointer.
	* testsuite/30_threads/promise/cons/alloc.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211996 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-25  Paul Gortmaker  <paul.gortmaker@windriver.com>
            Jakub Jelinek  <jakub@redhat.com>

        * gcc.c (set_multilib_dir): Malloc "." pointer as well.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211997 138bc75d-0d04-0410-961f-82ee72b054a4