Commit Graph

126468 Commits

Author SHA1 Message Date
Uros Bizjak
65e95828e5 constraints.md (Ts, Tv): New address constrains.
* config/i386/constraints.md (Ts, Tv): New address constrains.
	* config/i386/i386.md (*lea<mode>, *<mode>_<bndcheck>): Use Ts
	constraint for address_no_seg_operand.
	* config/i386/sse.md (*avx512pf_gatherpf<mode>_mask)
	(*avx512pf_gatherpf<mode>, *avx512pf_scatterpf<mode>_mask)
	(*avx512pf_scatterpf<mode>, *avx2_gathersi<mode>)
	(*avx2_gathersi<mode>_2, *avx2_gatherdi<mode>, *avx2_gatherdi<mode>_2)
	(*avx2_gatherdi<mode>_3, *avx2_gatherdi<mode>_4)
	(*avx512f_gathersi<mode>, *avx512f_gathersi<mode>_2)
	(*avx512f_gatherdi<mode>, *avx512f_gatherdi<mode>_2)
	(*avx512f_scattersi<mode> *avx512f_scatterdi<mode>): Use Tv
	constraint for vsib_address_operand.

From-SVN: r204317
2013-11-02 12:32:53 +01:00
Paolo Carlini
2afe03827a re PR c++/29234 (Call to operator() of temporary object wrongly parsed)
/cp
2013-11-02  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/29234
	PR c++/56037
	* parser.c (cp_parser_cast_expression): If we aren't looking at
	a cast-expression don't call cp_parser_type_id.
	(cp_parser_postfix_expression): Likewise for compound-literal.
	(cp_parser_tokens_start_cast_expression): Adjust.

/testsuite
2013-11-02  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/29234
	PR c++/56037
	* g++.dg/parse/pr29234.C: New.
	* g++.dg/parse/pr56037.C: Likewise.

From-SVN: r204312
2013-11-02 09:34:13 +00:00
Balaji V. Iyer
ef86cd2bf2 Added libcilkrts's .lib dir to load path to Cilk keywords testsuite files.
+2013-11-01  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * gcc.dg/cilk-plus/cilk-plus.exp: Loaded libcilkrts library path and
+       passed it in as one of the options to all Cilk keywords test.
+

From-SVN: r204310
2013-11-01 20:51:44 -07:00
Steven Bosscher
337405fddc gcse.c (pre_delete): Remove references to regmove from comments.
* gcse.c (pre_delete): Remove references to regmove from comments.
	* recog.c: (validate_replace_rtx_1): Likewise.
	* config/rl78/rl78.c: Likewise.
	* config/v850/v850.h: Likewise, and remove unused ENABLE_REGMOVE_PASS.
	* common/config/m32r/m32r-common.c: Don't manipulate OPT_fregmove.
	* common/config/mmix/mmix-common.c: Likewise.

From-SVN: r204309
2013-11-02 00:26:48 +00:00
GCC Administrator
98e4331797 Daily bump.
From-SVN: r204308
2013-11-02 00:17:09 +00:00
Edward Smith-Rowland
48cff4fa4e re PR c++/58708 (string literal operator templates broken)
gcc/cp:

2013-11-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	PR c++/58708
	* parser.c (make_string_pack): Discover non-const type and size
	of character and build parm pack with correct type and chars.


gcc/testsuite:

2013-11-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	PR c++/58708
	* g++.dg/cpp1y/pr58708.C: New.

From-SVN: r204305
2013-11-01 23:00:48 +00:00
Joseph Myers
4f25457b4c * tr.po: Update.
From-SVN: r204303
2013-11-01 22:26:30 +00:00
Trevor Saunders
3df8d54b38 * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r204302
2013-11-01 22:10:37 +00:00
Trevor Saunders
07687835be Replace some heap vectors with stack vectors.
From http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02735.html

This patch is pretty dull, it just replaces a bunch of things of the
form
vec<T> x;
x.create (N); // N is a constant
blah blah
x.release ();
by
stack_vec<T, N> x;
blah blah

2013-11-01  Trevor Saunders  <tsaunders@mozilla.com>

gcc/
	* function.c (reorder_blocks): Convert block_stack to a stack_vec.
	* gimplify.c (gimplify_compound_lval): Likewise.
	* graphite-clast-to-gimple.c (gloog): Likewise.
	* graphite-dependences.c (loop_is_parallel_p): Likewise.
	* graphite-scop-detection.c (scopdet_basic_block_info): Likewise.
	(limit_scop); Likewise.
	(build_scops): Likewise.
	(dot_scop): Likewise.
	* graphite-sese-to-poly.c (sese_dom_walker): Likewise.
	(build_scop_drs): Likewise.
	(insert_stmts): Likewise.
	(insert_out_of_ssa_copy): Likewise.
	(remove_phi): Likewise.
	(rewrite_commutative_reductions_out_of_ssa_close_phi): Likewise.
	* hw-doloop.c (discover_loop): Likewise.
	* tree-call-cdce.c (shrink_wrap_one_built_in_call): Likewise.
	* tree-dfa.c (dump_enumerated_decls): Likewise.
	* tree-if-conv.c (if_convertable_loop_p): Likewise.
	* tree-inline.c (tree_function_versioning): Likewise.
	* tree-loop-distribution.c (build_rdg): Likewise.
	(rdg_flag_vertex_and_dependent): Likewise.
	(distribute_loop): Likewise.
	* tree-parloops.c (loop_parallel_p): Likewise.
	(eliminate_local_variables): Likewise.
	(separate_decls_in_region): Likewise.
	* tree-predcom.c (tree_predictive_commoning_loop): Likewise.
	* tree-ssa-phiopt.c (cond_if_else_store_replacement): Likewise.
	* tree-ssa-uncprop.c (uncprop_dom_walker): Likewise.
	* tree-vect-loop.c (vect_analyze_scaler_cycles_1): Likewise.
	* tree-vect-patterns.c (vect_pattern_recog): Likewise.
	* tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized): Likewise.
	(vectorizable_condition): Likewise.

gcc/cp/
	* semantics.c (build_anon_member_initialization): Convert fields to be
        a stack_vec.

From-SVN: r204301
2013-11-01 16:31:32 -04:00
Jonathan Wakely
654a6bb421 Fix date of previous ChangeLog entry.
From-SVN: r204300
2013-11-01 20:10:51 +00:00
Michael Brune
2b5ab1e438 enable_special_members.h: New.
2013-10-31  Michael Brune  <lucdanton@free.fr>

	* include/bits/enable_special_members.h: New.
	* include/experimental/optional: New.
	* include/Makefile.am: Handle include/experimental.
	* include/Makefile.in: Regenerate.
	* testsuite/libstdc++-dg/conformance.exp: Run tests from
	testsuite/experimental sub-directory.
	* testsuite/experimental/optional/assignment/1.cc: New.
	* testsuite/experimental/optional/assignment/2.cc: New.
	* testsuite/experimental/optional/assignment/3.cc: New.
	* testsuite/experimental/optional/assignment/4.cc: New.
	* testsuite/experimental/optional/assignment/5.cc: New.
	* testsuite/experimental/optional/assignment/6.cc: New.
	* testsuite/experimental/optional/cons/copy.cc: New.
	* testsuite/experimental/optional/cons/default.cc: New.
	* testsuite/experimental/optional/cons/move.cc: New.
	* testsuite/experimental/optional/cons/value.cc: New.
	* testsuite/experimental/optional/constexpr/cons/default.cc: New.
	* testsuite/experimental/optional/constexpr/cons/value.cc: New.
	* testsuite/experimental/optional/constexpr/in_place.cc: New.
	* testsuite/experimental/optional/constexpr/make_optional.cc: New.
	* testsuite/experimental/optional/constexpr/nullopt.cc: New.
	* testsuite/experimental/optional/constexpr/observers/1.cc: New.
	* testsuite/experimental/optional/constexpr/observers/2.cc: New.
	* testsuite/experimental/optional/constexpr/observers/3.cc: New.
	* testsuite/experimental/optional/constexpr/observers/4.cc: New.
	* testsuite/experimental/optional/constexpr/observers/5.cc: New.
	* testsuite/experimental/optional/constexpr/relops/1.cc: New.
	* testsuite/experimental/optional/constexpr/relops/2.cc: New.
	* testsuite/experimental/optional/constexpr/relops/3.cc: New.
	* testsuite/experimental/optional/constexpr/relops/4.cc: New.
	* testsuite/experimental/optional/constexpr/relops/5.cc: New.
	* testsuite/experimental/optional/constexpr/relops/6.cc: New.
	* testsuite/experimental/optional/in_place.cc: New.
	* testsuite/experimental/optional/make_optional.cc: New.
	* testsuite/experimental/optional/nullopt.cc: New.
	* testsuite/experimental/optional/observers/1.cc: New.
	* testsuite/experimental/optional/observers/2.cc: New.
	* testsuite/experimental/optional/observers/3.cc: New.
	* testsuite/experimental/optional/observers/4.cc: New.
	* testsuite/experimental/optional/observers/5.cc: New.
	* testsuite/experimental/optional/relops/1.cc: New.
	* testsuite/experimental/optional/relops/2.cc: New.
	* testsuite/experimental/optional/relops/3.cc: New.
	* testsuite/experimental/optional/relops/4.cc: New.
	* testsuite/experimental/optional/relops/5.cc: New.
	* testsuite/experimental/optional/relops/6.cc: New.
	* testsuite/experimental/optional/requirements.cc: New.
	* testsuite/experimental/optional/swap/1.cc: New.

From-SVN: r204299
2013-11-01 20:08:39 +00:00
Marc Glisse
a792026320 re PR c++/58834 (ICE on __builtin_shuffle within template function)
2013-11-01  Marc Glisse  <marc.glisse@inria.fr>

	PR c++/58834
gcc/cp/
	* pt.c (type_dependent_expression_p): Handle null argument.

gcc/testsuite/
	* g++.dg/ext/pr58834.C: New file.

From-SVN: r204296
2013-11-01 15:23:24 +00:00
Jakub Jelinek
ee1d5a0256 c-typeck.c (c_finish_omp_clauses): Go to check_dup_generic at the end, unless remove is true.
* c-typeck.c (c_finish_omp_clauses) <case OMP_CLAUSE_UNIFORM>: Go to
	check_dup_generic at the end, unless remove is true.
	(c_finish_omp_clauses) <case OMP_CLAUSE_REDUCTION>: Add break; after
	remove = true;.
	(c_finish_omp_clauses) <case OMP_CLAUSE_COPYIN>: Likewise.

	* semantics.c (finish_omp_clauses) <case OMP_CLAUSE_UNIFORM>: Go to
	check_dup_generic at the end, unless remove is true.
	(finish_omp_clauses) <case OMP_CLAUSE_LINEAR>: Add break; after
	remove = true;.

	* gcc.dg/gomp/declare-simd-2.c (f12, f13, f14, f15, f16, f17): New
	tests.
	* g++.dg/gomp/declare-simd-2.C (f15, f16, f17, f18, f19, f20): New
	tests.

From-SVN: r204294
2013-11-01 13:25:16 +01:00
Jonathan Wakely
bef49287da * include/bits/stl_function.h (logical_not<void>): Add noexcept.
From-SVN: r204293
2013-11-01 11:59:51 +00:00
Paolo Carlini
7115d32a36 re PR libstdc++/58952 (Construct "std::getchar()" rejected when getchar is macro in C library)
2013-11-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/58952
	* include/c_global/cstdio: Undef getchar.

From-SVN: r204291
2013-11-01 11:10:55 +00:00
Jonathan Wakely
d081231ab5 N3421 C++1y Transparent functors
N3421 C++1y Transparent functors
	* include/bits/stl_function.h (plus<void>, minus<void>,
	multiplies<void>, divides<void>, modulus<void>, negate<void>,
	equal_to<void>, not_equal_to<void>, greater<void>, less<void>,
	greater_equal<void>, less_equal<void>, logical_and<void>,
	logical_or<void>, logical_not<void>, bit_and<void>, bit_or<void>,
	bit_xor<void>, bit_not<void>): Define.
	* doc/xml/manual/status_cxx2014.xml: Update.
	* testsuite/20_util/function_objects/comparisons_void.cc: New.

	* include/bits/stl_function.h: Implement N3421.
	* testsuite/20_util/function_objects/comparisons_void.cc: New.

From-SVN: r204290
2013-11-01 11:07:15 +00:00
Uros Bizjak
13a26a7d10 configure.ac (HAVE_AS_IX86_INTERUNIT_MOVQ): Always define as 0/1.
* configure.ac (HAVE_AS_IX86_INTERUNIT_MOVQ): Always define as 0/1.
	* configure: Regenerate.
	* config/i386/i386.md (*movdi_internal): Change
	HAVE_AS_IX86_INTERUNIT_MOVQ to runtime check.
	(*movdf_internal): Ditto.
	* config/i386/mmx.md (*mov<mode>_internal): Ditto.
	* config/i386/sse.md (vec_concatv2di): Output interunit movq
	for HAVE_AS_IX86_INTERUNIT_MOVQ targets.

From-SVN: r204289
2013-11-01 09:39:31 +01:00
Paul Thomas
942323000b re PR fortran/57893 (Crash for allocatable character string during compilation.)
2013-11-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/57893
	* gfortran.dg/unlimited_polymorphic_13.f90 : Break up select
	type block.

From-SVN: r204286
2013-11-01 06:56:41 +00:00
Robert Suchanek
7a59fa3a33 lra-spills.c (assign_spill_hard_regs): Remove statement terminator after comment.
2013-10-31  Robert Suchanek  <Robert.Suchanek@imgtec.com>
* lra-spills.c (assign_spill_hard_regs): Remove statement terminator
after comment.

From-SVN: r204285
2013-10-31 20:23:05 -04:00
Balaji V. Iyer
93edf2c8e7 Added PR number (PR bootstrap/58918) to a previous ChangeLog entry.
From-SVN: r204284
2013-10-31 17:21:01 -07:00
GCC Administrator
108d0a0271 Daily bump.
From-SVN: r204283
2013-11-01 00:16:58 +00:00
Balaji V. Iyer
c1cb31a74f Fix for PR other/58925 +2013-10-31 Balaji V.
Fix for PR other/58925
+2013-10-31  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR other/58925
+       * configure.ac: Added target_alias and GCC_LIBSTDCXX_RAW_CXX_FLAGS
+       fields.
+       * configure: Regenerated.
+       * aclocal.m4: Likewise.
+       * Makefile.in: Likewise.
+       * Makefile.am: Added gcc_version field.
+

From-SVN: r204280
2013-10-31 16:55:21 -07:00
David Malcolm
5e20cdc96e Automated part of renaming of symtab_node_base to symtab_node.
gcc/

	Patch autogenerated by rename_symtab.py from
	https://github.com/davidmalcolm/gcc-refactoring-scripts
	revision 58bb219cc090b2f4516a9297d868c245495ee622
	with ChangeLog entry fixed up by hand.

	* cgraph.c (x_cgraph_nodes_queue): Rename symtab_node_base to
	symtab_node.
	(cgraph_node_for_asm): Likewise.
	* cgraph.h (symtab_node_base): Likewise.
	(cgraph_node): Likewise.
	(varpool_node): Likewise.
	(is_a_helper <cgraph_node>::test): Likewise.
	(is_a_helper <varpool_node>::test): Likewise.
	(symtab_nodes): Likewise.
	(symtab_register_node): Likewise.
	(symtab_unregister_node): Likewise.
	(symtab_remove_node): Likewise.
	(symtab_get_node): Likewise.
	(symtab_node_for_asm): Likewise.
	(symtab_node_asm_name): Likewise.
	(symtab_node_name): Likewise.
	(symtab_insert_node_to_hashtable): Likewise.
	(symtab_add_to_same_comdat_group): Likewise.
	(symtab_dissolve_same_comdat_group_list): Likewise.
	(dump_symtab_node): Likewise.
	(debug_symtab_node): Likewise.
	(dump_symtab_base): Likewise.
	(verify_symtab_node): Likewise.
	(verify_symtab_base): Likewise.
	(symtab_used_from_object_file_p): Likewise.
	(symtab_alias_ultimate_target): Likewise.
	(symtab_resolve_alias): Likewise.
	(fixup_same_cpp_alias_visibility): Likewise.
	(symtab_for_node_and_aliases): Likewise.
	(symtab_nonoverwritable_alias): Likewise.
	(availability symtab_node_availability): Likewise.
	(symtab_semantically_equivalent_p): Likewise.
	(fixup_same_cpp_alias_visibility): Likewise.
	(symtab_prevail_in_asm_name_hash): Likewise.
	(cgraph): Likewise.
	(varpool): Likewise.
	(varpool_first_variable): Likewise.
	(varpool_next_variable): Likewise.
	(varpool_first_static_initializer): Likewise.
	(varpool_next_static_initializer): Likewise.
	(varpool_first_defined_variable): Likewise.
	(varpool_next_defined_variable): Likewise.
	(cgraph_first_defined_function): Likewise.
	(cgraph_next_defined_function): Likewise.
	(cgraph_first_function): Likewise.
	(cgraph_next_function): Likewise.
	(cgraph_first_function_with_gimple_body): Likewise.
	(cgraph_next_function_with_gimple_body): Likewise.
	(symtab_alias_target): Likewise.
	(symtab_real_symbol_p): Likewise.
	(symtab_can_be_discarded): Likewise.
	* cgraphbuild.c (mark_address): Likewise.
	(mark_load): Likewise.
	(mark_store): Likewise.
	* cgraphunit.c (decide_is_symbol_needed): Likewise.
	(first): Likewise.
	(enqueue_node): Likewise.
	(referred_to_p): Likewise.
	(cgraph_process_same_body_aliases): Likewise.
	(analyze_functions): Likewise.
	(handle_alias_pairs): Likewise.
	(output_weakrefs): Likewise.
	(compile): Likewise.
	* gimple-fold.c (can_refer_decl_in_current_unit_p): Likewise.
	* ipa-inline-analysis.c (inline_write_summary): Likewise.
	* ipa-prop.c (remove_described_reference): Likewise.
	(try_decrement_rdesc_refcount): Likewise.
	(ipa_edge_duplication_hook): Likewise.
	* ipa-ref.c (ipa_record_reference): Likewise.
	(ipa_maybe_record_reference): Likewise.
	(ipa_clone_ref): Likewise.
	(ipa_clone_references): Likewise.
	(ipa_clone_referring): Likewise.
	(ipa_find_reference): Likewise.
	(ipa_remove_stmt_references): Likewise.
	(ipa_clear_stmts_in_references): Likewise.
	* ipa-ref.h (symtab_node_base): Likewise.
	(ipa_ref): Likewise.
	(ipa_record_reference): Likewise.
	(ipa_maybe_record_reference): Likewise.
	(ipa_clone_references): Likewise.
	(ipa_clone_referring): Likewise.
	(ipa_clone_ref): Likewise.
	(ipa_find_reference): Likewise.
	(ipa_remove_stmt_references): Likewise.
	(ipa_clear_stmts_in_references): Likewise.
	* ipa-reference.c (ipa_reference_write_optimization_summary):
	Likewise.
	* ipa.c (enqueue_node): Likewise.
	(process_references): Likewise.
	(walk_polymorphic_call_targets): Likewise.
	(symtab_remove_unreachable_nodes): Likewise.
	(address_taken_from_non_vtable_p): Likewise.
	(comdat_can_be_unshared_p_1): Likewise.
	(comdat_can_be_unshared_p): Likewise.
	(can_replace_by_local_alias): Likewise.
	(function_and_variable_visibility): Likewise.
	* is-a.h: Likewise (within example in comment).
	* lto-cgraph.c (input_cgraph_opt_summary): Likewise.
	(lto_symtab_encoder_encode): Likewise.
	(lto_symtab_encoder_delete_node): Likewise.
	(lto_symtab_encoder_in_partition_p): Likewise.
	(lto_set_symtab_encoder_in_partition): Likewise.
	(output_refs): Likewise.
	(compute_ltrans_boundary): Likewise.
	(output_symtab): Likewise.
	(input_node): Likewise.
	(input_ref): Likewise.
	(input_edge): Likewise.
	(input_cgraph_1): Likewise.
	(input_refs): Likewise.
	(output_cgraph_opt_summary): Likewise.
	(input_node_opt_summary): Likewise.
	(input_cgraph_opt_section): Likewise.
	* lto-section-in.c (lto_free_function_in_decl_state_for_node):
	Likewise.
	* lto-streamer-out.c (lto_output): Likewise.
	(output_symbol_p): Likewise.
	(produce_symtab): Likewise.
	* lto-streamer.h (lto_encoder_entry): Likewise.
	(lto_free_function_in_decl_state_for_node): Likewise.
	(lto_symtab_encoder_encode): Likewise.
	(lto_symtab_encoder_delete_node): Likewise.
	(lto_symtab_encoder_in_partition_p): Likewise.
	(lto_set_symtab_encoder_in_partition): Likewise.
	(lto_symtab_encoder_lookup): Likewise.
	(lsei_node): Likewise.
	(lto_symtab_encoder_deref): Likewise.
	* symtab.c (symtab_hash): Likewise.
	(assembler_name_hash): Likewise.
	(symtab_nodes): Likewise.
	(hash_node): Likewise.
	(eq_node): Likewise.
	(hash_node_by_assembler_name): Likewise.
	(eq_assembler_name): Likewise.
	(insert_to_assembler_name_hash): Likewise.
	(unlink_from_assembler_name_hash): Likewise.
	(symtab_prevail_in_asm_name_hash): Likewise.
	(symtab_register_node): Likewise.
	(symtab_insert_node_to_hashtable): Likewise.
	(symtab_unregister_node): Likewise.
	(symtab_get_node): Likewise.
	(symtab_remove_node): Likewise.
	(symtab_initialize_asm_name_hash): Likewise.
	(symtab_node_for_asm): Likewise.
	(symtab_add_to_same_comdat_group): Likewise.
	(symtab_dissolve_same_comdat_group_list): Likewise.
	(symtab_node_asm_name): Likewise.
	(symtab_node_name): Likewise.
	(dump_symtab_base): Likewise.
	(dump_symtab_node): Likewise.
	(dump_symtab): Likewise.
	(debug_symtab_node): Likewise.
	(verify_symtab_base): Likewise.
	(verify_symtab_node): Likewise.
	(verify_symtab): Likewise.
	(symtab_used_from_object_file_p): Likewise.
	(symtab_node_availability): Likewise.
	(symtab_alias_ultimate_target): Likewise.
	(fixup_same_cpp_alias_visibility): Likewise.
	(symtab_resolve_alias): Likewise.
	(symtab_for_node_and_aliases): Likewise.
	(symtab_for_node_and_aliases): Likewise.
	(symtab_nonoverwritable_alias_1): Likewise.
	(symtab_nonoverwritable_alias): Likewise.
	(symtab_semantically_equivalent_p): Likewise.
	* value-prof.c (init_node_map): Likewise.
	* varasm.c (find_decl): Likewise.
	* varpool.c (varpool_node_for_asm): Likewise.
	(varpool_remove_unreferenced_decls): Likewise.

gcc/c-family/

	Patch autogenerated by rename_symtab.py from
	https://github.com/davidmalcolm/gcc-refactoring-scripts
	revision 58bb219cc090b2f4516a9297d868c245495ee622

	* c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
	symtab_node_base to symtab_node.

gcc/lto/

	Patch autogenerated by rename_symtab.py from
	https://github.com/davidmalcolm/gcc-refactoring-scripts
	revision 58bb219cc090b2f4516a9297d868c245495ee622

	* lto-partition.c (add_symbol_to_partition): Rename
	symtab_node_base to symtab_node.
	(get_symbol_class): Likewise.
	(symbol_partitioned_p): Likewise.
	(add_references_to_partition): Likewise.
	(add_symbol_to_partition_1): Likewise.
	(contained_in_symbol): Likewise.
	(add_symbol_to_partition): Likewise.
	(lto_1_to_1_map): Likewise.
	(lto_max_map): Likewise.
	(lto_balanced_map): Likewise.
	(privatize_symbol_name): Likewise.
	(promote_symbol): Likewise.
	(may_need_named_section_p): Likewise.
	(rename_statics): Likewise.
	(lto_promote_statics_nonwpa): Likewise.
	* lto-symtab.c (lto_symtab_merge): Likewise.
	(lto_symtab_resolve_replaceable_p): Likewise.
	(lto_symtab_symbol_p): Likewise.
	(lto_symtab_resolve_can_prevail_p): Likewise.
	(lto_symtab_resolve_symbols): Likewise.
	(lto_symtab_merge_decls_2): Likewise.
	(lto_symtab_merge_decls_1): Likewise.
	(lto_symtab_merge_decls): Likewise.
	(lto_symtab_merge_symbols_1): Likewise.
	(lto_symtab_merge_symbols): Likewise.
	(lto_symtab_prevailing_decl): Likewise.
	* lto.c (lto_wpa_write_files): Likewise.
	(read_cgraph_and_symbols): Likewise.
	(do_whole_program_analysis): Likewise.

From-SVN: r204279
2013-10-31 21:26:14 +00:00
David Malcolm
64f37e9d42 Manual part of renaming of symtab_node_base to symtab_node.
gcc/
	* ipa-ref.h (symtab_node): Remove typedef to pointer type, as it
	clashes with the preferred name for the base class.
	(const_symtab_node): Remove redundant typedef.

From-SVN: r204278
2013-10-31 21:22:50 +00:00
Jonathan Wakely
1b1bdc03f8 tuple (_Index_tuple, [...]): Move to <utility>.
* include/std/tuple (_Index_tuple, _Build_index_tuple): Move to
	<utility>.
	* include/std/utility (integer_sequence, make_integer_sequence,
	index_sequence, make_index_sequence, index_sequence_for): Define.
	* doc/xml/manual/status_cxx2014.xml: Update.
	* testsuite/20_util/integer_sequence/intseq.cc: New.
	* testsuite/20_util/integer_sequence/requirements/typedefs.cc: New.

From-SVN: r204275
2013-10-31 19:23:54 +00:00
Jakub Jelinek
d8c84975e6 optabs.c (expand_vec_perm): Avoid vector mode punning SUBREGs in SET_DEST.
* optabs.c (expand_vec_perm): Avoid vector mode punning
	SUBREGs in SET_DEST.
	* expmed.c (store_bit_field_1): Likewise.
	* config/i386/sse.md (movdi_to_sse, vec_pack_sfix_trunc_v2df,
	vec_pack_sfix_v2df, vec_shl_<mode>, vec_shr_<mode>,
	vec_interleave_high<mode>, vec_interleave_low<mode>): Likewise.
	* config/i386/i386.c (ix86_expand_vector_move_misalign,
	ix86_expand_sse_movcc, ix86_expand_int_vcond, ix86_expand_vec_perm,
	ix86_expand_sse_unpack, ix86_expand_args_builtin,
	ix86_expand_vector_init_duplicate, ix86_expand_vector_set,
	emit_reduc_half, expand_vec_perm_blend, expand_vec_perm_pshufb,
	expand_vec_perm_interleave2, expand_vec_perm_pshufb2,
	expand_vec_perm_vpshufb2_vpermq,
	expand_vec_perm_vpshufb2_vpermq_even_odd, expand_vec_perm_even_odd_1,
	expand_vec_perm_broadcast_1, expand_vec_perm_vpshufb4_vpermq2,
	ix86_expand_sse2_mulv4si3, ix86_expand_pinsr): Likewise.
	(expand_vec_perm_palignr): Likewise.  Modify a copy of *d rather
	than *d itself.

From-SVN: r204274
2013-10-31 20:06:49 +01:00
Jakub Jelinek
5a9785fb4c c-typeck.c (c_finish_omp_clauses): Diagnose aligned clause with decl that is not pointer nor array.
* c-typeck.c (c_finish_omp_clauses): Diagnose aligned clause
	with decl that is not pointer nor array.

	* semantics.c (finish_omp_clauses): Diagnose aligned clause
	with decl that is not pointer nor array nor reference to those.

	* g++.dg/gomp/simd-1.C: New test.
	* g++.dg/gomp/declare-simd-1.C (f32): Fix up aligned clause argument.
	* g++.dg/gomp/declare-simd-2.C (fn13, fn14): Add new tests.
	* gcc.dg/gomp/declare-simd-2.c (fn7, fn8, fn9, fn10, fn11): Likewise.
	* c-c++-common/gomp/simd6.c: New test.

From-SVN: r204273
2013-10-31 20:06:08 +01:00
Uros Bizjak
e5ccdfcd51 i386.c (ix86_expand_sse2_abs): Rename function arguments.
* config/i386/i386.c (ix86_expand_sse2_abs): Rename function arguments.
	Use gcc_unreachable for unhandled modes.  Do not check results of
	expand_simple_binop.  If not expanded to target, move the result.

From-SVN: r204271
2013-10-31 19:37:29 +01:00
Steve Ellcey
5e5f34bf63 configure.ac: Add header checks for fenv.h and complex.h.
2013-10-31  Steve Ellcey  <sellcey@mips.com>

	* configure.ac: Add header checks for fenv.h and complex.h.
	* configure: Regenerate.

From-SVN: r204270
2013-10-31 17:12:35 +00:00
Chung-Ju Wu
9304f87611 Add new nds32 port, including machine description, libgcc, and documentation.
[gcc/ChangeLog]
	* config.gcc (nds32*-*-*): Add nds32 target.
	* config/nds32/nds32.c: New file.
	* config/nds32/nds32.h: New file.
	* config/nds32/nds32.md: New file.
	* config/nds32/constants.md: New file.
	* config/nds32/constraints.md: New file.
	* config/nds32/iterators.md: New file.
	* config/nds32/nds32-doubleword.md: New file.
	* config/nds32/nds32-intrinsic.md: New file.
	* config/nds32/nds32_intrinsic.h: New file.
	* config/nds32/nds32-modes.def: New file.
	* config/nds32/nds32-multiple.md: New file.
	* config/nds32/nds32.opt: New file.
	* config/nds32/nds32-opts.h: New file.
	* config/nds32/nds32-protos.h: New file.
	* config/nds32/nds32-peephole2.md: New file.
	* config/nds32/pipelines.md: New file.
	* config/nds32/predicates.md: New file.
	* config/nds32/t-mlibs: New file.
	* common/config/nds32: New directory and files.

	* doc/invoke.texi (NDS32 options): Document nds32 specific options.
	* doc/md.texi (NDS32 family): Document nds32 specific constraints.
	* doc/install.texi (Cross-Compiler-Specific Options): Document
	--with-nds32-lib for nds32 target.
	* doc/extend.texi (Function Attributes, Target Builtins): Document
	nds32 specific attributes.
	
[libgcc/ChangeLog]
	* config.host (nds32*-elf*): Add nds32 target.
	* config/nds32 : New directory and files.
	
[contrib/ChangeLog]
	* config-list.mk (nds32le-elf, nds32be-elf): Add nds32 target.

Co-Authored-By: Shiva Chen <shiva0217@gmail.com>

From-SVN: r204269
2013-10-31 17:08:16 +00:00
Vladimir Makarov
7214306b3e lra-constraints (process_alt_operands): Use the result elimination register for operand when matching constraints.
2013-10-31  Vladimir Makarov  <vmakarov@redhat.com>

	* lra-constraints (process_alt_operands): Use the result
	elimination register for operand when matching constraints.

From-SVN: r204267
2013-10-31 16:00:38 +00:00
Jason Merrill
c1c2162ead semantics.c (cxx_eval_call_expression): Handle trivial value-initialization.
* semantics.c (cxx_eval_call_expression): Handle trivial
	value-initialization.
	* typeck2.c (store_init_value): Call maybe_constant_init after
	cxx_constant_value.

From-SVN: r204266
2013-10-31 11:45:04 -04:00
Jason Merrill
b8aaa1a3b9 decl.c (cxx_maybe_build_cleanup): Always set LOOKUP_NONVIRTUAL.
* decl.c (cxx_maybe_build_cleanup): Always set LOOKUP_NONVIRTUAL.
	* decl2.c (build_cleanup): Just call cxx_maybe_build_cleanup.

From-SVN: r204265
2013-10-31 11:44:58 -04:00
Jason Merrill
1c79ebd522 re PR c++/58162 ([C++11] bogus error: use of deleted function 'constexpr A::A(const A&)')
PR c++/58162
	* parser.c (cp_parser_late_parse_one_default_arg): Set
	TARGET_EXPR_DIRECT_INIT_P.

From-SVN: r204263
2013-10-31 10:41:55 -04:00
Jason Merrill
83f31d8d5d class.c (type_build_ctor_call): Return early in C++98 mode.
* class.c (type_build_ctor_call): Return early in C++98 mode.
	(type_build_dtor_call): Likewise.

From-SVN: r204262
2013-10-31 10:13:42 -04:00
Edward Smith-Rowland
5d46aaee73 I forgot to commit this from the C++14 digit-separators commit.
From-SVN: r204261
2013-10-31 14:08:43 +00:00
Edward Smith-Rowland
7057e6452b Implement C++14 digit separators.
libcpp:

2013-10-31  Edward Smith-Rowland  <3dw4rd@verizon.net>

        Implement C++14 digit separators.
	* include/cpplib.h (cpp_options): Add digit_separators flag.
	* internal.h (DIGIT_SEP(c)): New macro.
	* expr.c (cpp_classify_number): Check improper placement of digit sep;
	(cpp_interpret_integer): Skip over digit separators.
	* init.c (lang_flags): Add digit_separators flag; (lang_defaults): Add
	digit separator flags per language; (cpp_set_lang): Set
	digit_separators
	* lex.c (lex_number): Add digits separator to allowable characters for
	C++14.


gcc/c-family:

2013-10-31  Edward Smith-Rowland  <3dw4rd@verizon.net>

        Implement C++14 digit separators.
	* c-lex.c (interpret_float): Remove digit separators from scratch string
	before building real literal.


gcc/testsuite:

2013-10-31  Edward Smith-Rowland  <3dw4rd@verizon.net>

        Implement C++14 digit separators.
	* g++.dg/cpp1y/digit-sep.C: New.
	* g++.dg/cpp1y/digit-sep-neg.C: New.
	* g++.dg/cpp1y/digit-sep-cxx11-neg.C: New.


libstdc++-v3:

2013-10-31  Edward Smith-Rowland  <3dw4rd@verizon.net>

        Implement C++14 digit separators.
	* include/include/bits/parse_numbers.h: Change struct _Digit<_Base, '`'>
	to struct _Digit<_Base, '\''>.

From-SVN: r204260
2013-10-31 14:01:23 +00:00
Jakub Jelinek
b63cb15373 * gcc.dg/vect/vect-align-3.c: New test.
From-SVN: r204259
2013-10-31 14:59:07 +01:00
Jakub Jelinek
1e99c6e044 tree-vrp.c (maybe_set_nonzero_bits): New function.
* tree-vrp.c (maybe_set_nonzero_bits): New function.
	(remove_range_assertions): Call it.

From-SVN: r204258
2013-10-31 14:58:29 +01:00
Jakub Jelinek
eae76e53d9 tree.c (tree_ctz): New function.
* tree.c (tree_ctz): New function.
	* tree.h (tree_ctz): New prototype.
	* tree-ssanames.h (get_range_info, get_nonzero_bits): Change
	first argument from tree to const_tree.
	* tree-ssanames.c (get_range_info, get_nonzero_bits): Likewise.
	* tree-vectorizer.h (vect_generate_tmps_on_preheader): New prototype.
	* tree-vect-loop-manip.c (vect_generate_tmps_on_preheader): No longer
	static.
	* expr.c (highest_pow2_factor): Reimplemented using tree_ctz.
	* tree-vect-loop.c (vect_analyze_loop_operations,
	vect_transform_loop): Don't force scalar loop for bound just because
	number of iterations is unknown, only do it if it is not known to be
	a multiple of vectorization_factor.
	* builtins.c (get_object_alignment_2): Use tree_ctz on offset.

From-SVN: r204257
2013-10-31 14:57:05 +01:00
Jakub Jelinek
c853f62af3 gimple-pretty-print.c (dump_ssaname_info): Print newline also in case of VR_VARYING.
* gimple-pretty-print.c (dump_ssaname_info): Print newline also
	in case of VR_VARYING.  Print get_nonzero_bits if not all ones.
	* tree-ssanames.h (struct range_info_def): Add nonzero_bits field.
	(set_nonzero_bits, get_nonzero_bits): New prototypes.
	* tree-ssa-ccp.c (get_default_value): Use get_range_info to see if
	a default def isn't partially constant.
	(ccp_finalize): If after IPA, set_range_info if integral SSA_NAME
	is known to be partially zero.
	(evaluate_stmt): If we'd return otherwise VARYING, use get_range_info
	to see if a default def isn't partially constant.
	* tree-ssanames.c (set_range_info): Initialize nonzero_bits upon
	creation of a range, if VR_RANGE, try to improve nonzero_bits from
	the range.
	(set_nonzero_bits, get_nonzero_bits): New functions.

	* g++.dg/warn/pr33738.C (main): Initialize a2 again to make sure
	we warn about it already during VRP1 pass.

From-SVN: r204256
2013-10-31 14:55:31 +01:00
Jakub Jelinek
d8202b848c tree-cfg.c (assert_unreachable_fallthru_edge_p): New function.
* tree-cfg.c (assert_unreachable_fallthru_edge_p): New function.
	* tree-cfg.h (assert_unreachable_fallthru_edge_p): New prototype.
	* tree-vrp.c (all_imm_uses_in_stmt_or_feed_cond): New function.
	(remove_range_assertions): If ASSERT_EXPR_VAR has no other immediate
	uses but in the condition and ASSERT_EXPR and the other successor of
	the predecessor bb is __builtin_unreachable (), set_range_info of the
	ASSERT_EXPR_VAR to the range info of the ASSERT_EXPR's lhs.

From-SVN: r204255
2013-10-31 14:51:38 +01:00
Martin Jambor
b319f79c92 re PR rtl-optimization/58934 (build fails on cris-elf in reload_cse_simplify_operands for newlib dtoa.c)
2013-10-31  Martin Jambor  <mjambor@suse.cz>

	PR rtl-optimization/58934
	Revert:
	2013-10-30  Martin Jambor  <mjambor@suse.cz>
	PR rtl-optimization/10474
	* ira.c (find_moveable_pseudos): Do not calculate dominance info
	nor df analysis.
	(interesting_dest_for_shprep): New function.
	(split_live_ranges_for_shrink_wrap): Likewise.
	(ira): Calculate dominance info and df analysis. Call
	split_live_ranges_for_shrink_wrap.

testsuite/
	* gcc.dg/pr10474.c: New testcase.
	* gcc.dg/ira-shrinkwrap-prep-1.c: Likewise.
	* gcc.dg/ira-shrinkwrap-prep-2.c: Likewise.

From-SVN: r204254
2013-10-31 14:39:26 +01:00
Paolo Carlini
0a466ec0c7 48631_neg.cc: Tweak dg-prune.
2013-10-31  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/20_util/default_delete/48631_neg.cc: Tweak dg-prune.

From-SVN: r204253
2013-10-31 12:38:02 +00:00
Paolo Carlini
7f1001af7f re PR c++/58932 ([C++11] Deleted functions and SFINAE in partial template specializations)
/cp
2013-10-31  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58932
	Revert:
	2013-10-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58466
	* pt.c (most_specialized_class): Bump processing_template_decl for
	get_class_bindings.

/testsuite
2013-10-31  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58932
	Revert:
	2013-10-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58466
	* g++.dg/cpp0x/variadic145.C: New.

	* g++.dg/cpp0x/sfinae49.C: New.

From-SVN: r204252
2013-10-31 12:10:20 +00:00
Richard Sandiford
57d4d653e8 re PR sanitizer/58543 (Invalid unpoisoning of stack redzones on ARM)
2013-10-31  Richard Sandiford  <rsandifo@linux.vnet.ibm.com>
	    Yury Gribov  <y.gribov@samsung.com>

	PR sanitizer/58543
	* asan.c (asan_clear_shadow): Allocate a new vreg for temporary
	shadow pointer to avoid clobbering the main one.

Co-Authored-By: Yury Gribov <y.gribov@samsung.com>

From-SVN: r204251
2013-10-31 12:10:01 +00:00
Paolo Carlini
7dccc537ba re PR c++/58932 ([C++11] Deleted functions and SFINAE in partial template specializations)
/cp
2013-10-31  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58932
	Revert:
	2013-10-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58466
	* pt.c (most_specialized_class): Bump processing_template_decl for
	get_class_bindings.

/testsuite
2013-10-31  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58932
	Revert:
	2013-10-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58466
	* g++.dg/cpp0x/variadic145.C: New.

	* g++.dg/cpp0x/sfinae49.C: New.

From-SVN: r204250
2013-10-31 12:09:17 +00:00
Paolo Carlini
39344c9927 re PR c++/58581 ([c++11] ICE with no-throw specification in deleted function)
/cp
2013-10-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58581
	* call.c (build_over_call): Check return value of mark_used.

/testsuite
2013-10-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58581
	* g++.dg/cpp0x/deleted1.C: New.

From-SVN: r204249
2013-10-31 10:11:49 +00:00
Zhenqiang Chen
ce5d49a831 lower-subreg.c (resolve_simple_move): Copy REG_INC note.
gcc/ChangeLog:
2013-10-31  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

	* lower-subreg.c (resolve_simple_move): Copy REG_INC note.

gcc/testsuite/ChangeLog:
2013-10-31  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

	* gcc.target/arm/lp1243022.c: New test.

From-SVN: r204247
2013-10-31 06:20:20 +00:00
Balaji V. Iyer
8c1a9d4d38 configure.ac: Changed a case statement to include i386.
2013-10-30  Balaji V. Iyer  <balaji.v.iyer@intel.com>

       * configure.ac: Changed a case statement to include i386.
       * configure: Regenerated.

From-SVN: r204246
2013-10-30 20:21:02 -07:00