Commit Graph

126384 Commits

Author SHA1 Message Date
Marek Polacek 55a7f02f06 re PR c++/58979 (ICE with invalid use of pointer-to-member)
PR c++/58979
c-family/
	* c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
testsuite/
	* g++.dg/diagnostic/pr58979.C: New test.

From-SVN: r204352
2013-11-04 16:01:49 +00:00
Joseph Myers 9193fb0595 cpp.texi (__GCC_IEC_559, [...]): Document macros.
* doc/cpp.texi (__GCC_IEC_559, __GCC_IEC_559_COMPLEX): Document
	macros.
	* target.def (float_exceptions_rounding_supported_p): New hook.
	* targhooks.c (default_float_exceptions_rounding_supported_p): New
	function.
	* targhooks.h (default_float_exceptions_rounding_supported_p):
	Declare.
	* doc/tm.texi.in (TARGET_FLOAT_EXCEPTIONS_ROUNDING_SUPPORTED_P):
	New @hook.
	* doc/tm.texi: Regenerate.
	* config.gcc (powerpc*-*-linux*): Set extra_objs.
	* config/rs6000/rs6000-linux.c: New file.
	* config/rs6000/rs6000-protos.h
	(rs6000_linux_float_exceptions_rounding_supported_p): Declare.
	* config/rs6000/linux.h
	(TARGET_FLOAT_EXCEPTIONS_ROUNDING_SUPPORTED_P): New macro.
	* config/rs6000/linux64.h
	(TARGET_FLOAT_EXCEPTIONS_ROUNDING_SUPPORTED_P): Likewise.
	* config/rs6000/t-linux (rs6000-linux.o): New rule.
	* config/rs6000/t-linux64 (rs6000-linux.o): Likewise.

c-family:
	* c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
	New functions.
	(c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.

testsuite:
	* gcc.dg/iec-559-macros-1.c, gcc.dg/iec-559-macros-2.c,
	gcc.dg/iec-559-macros-3.c, gcc.dg/iec-559-macros-4.c,
	gcc.dg/iec-559-macros-5.c, gcc.dg/iec-559-macros-6.c,
	gcc.dg/iec-559-macros-7.c, gcc.dg/iec-559-macros-8.c,
	gcc.dg/iec-559-macros-9.c: New tests.

From-SVN: r204351
2013-11-04 15:39:57 +00:00
Bill Schmidt 411f175509 vsx.md (*vsx_le_perm_store_<mode> for VSX_D): Replace the define_insn_and_split with a define_insn and two define_splits...
2013-11-04  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/vsx.md (*vsx_le_perm_store_<mode> for VSX_D):
	Replace the define_insn_and_split with a define_insn and two
	define_splits, with the split after reload re-permuting the source
	register to its original value.
	(*vsx_le_perm_store_<mode> for VSX_W): Likewise.
	(*vsx_le_perm_store_v8hi): Likewise.
	(*vsx_le_perm_store_v16qi): Likewise.

From-SVN: r204350
2013-11-04 14:39:12 +00:00
Bill Schmidt 9c778e5981 vector.md (vec_pack_trunc_v2df): Adjust for little endian.
2013-11-04  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/vector.md (vec_pack_trunc_v2df):  Adjust for
	little endian.

From-SVN: r204349
2013-11-04 14:34:50 +00:00
Jakub Jelinek 96f9e25a4b re PR tree-optimization/58946 (internal compiler error: in operator[], at vec.h:722)
PR tree-optimization/58946
	* tree-ssa-reassoc.c (maybe_optimize_range_tests): Update all
	bbs with bbinfo[idx].op != NULL before all blocks with
	bbinfo[idx].op == NULL.

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

From-SVN: r204348
2013-11-04 11:29:42 +01:00
Rainer Orth 2546da0b1d os-unix.c: Include <sched.h>.
* runtime/os-unix.c [__sun__ && __svr4__]: Include <sched.h>.
	(__cilkrts_hardware_cpu_count) [__sun__ && __svr4__]: Use sysconf.
	(__cilkrts_yield) [__sun__ && __svr4__]: Use sched_yield.

From-SVN: r204347
2013-11-04 10:13:55 +00:00
Richard Sandiford 7405bd1806 avr-log.c (avr_double_int_pop_digit): Delete.
gcc/
	* config/avr/avr-log.c (avr_double_int_pop_digit): Delete.
	(avr_dump_double_int_hex): Likewise.
	(avr_log_vadump): Remove %D and %X handling.
	* config/avr/avr.c (avr_double_int_push_digit): Delete.
	(avr_map_op_t): Change map from double_int to unsigned int.
	(avr_map_op): Update accordingly.
	(avr_map, avr_map_metric, avr_has_nibble_0xf, avr_map_decompose)
	(avr_move_bits, avr_out_insert_bits, avr_fold_builtin): Operate on
	unsigned ints rather than double_ints.

From-SVN: r204345
2013-11-04 09:04:22 +00:00
Eric Botcazou 94159ecf92 c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
c-family/
	* c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
	(dump_ada_specs): Adjust prototype of second callback.
	* c-ada-spec.c (cpp_check): New global variable.
	(dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
	(print_generic_ada_decl): Likewise.
	(has_static_fields): Change return type to bool and add guard.
	(has_nontrivial_methods): New predicate.
	(is_tagged_type): Change return type to bool.
	(separate_class_package): Call has_nontrivial_methods.
	(pp_ada_tree_identifier): Minor tweaks.
	(dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
	(dump_ada_array_domains): Likewise.
	(dump_ada_array_type): Likewise.
	(dump_template_types): Remove cpp_check parameter and do not pass it to
	dump_generic_ada_node.
	(dump_ada_template): Likewise.
	(dump_generic_ada_node): Remove cpp_check parameter and do not pass it
	recursively.
	(print_ada_methods): Change return type to integer.  Remove cpp_check
	parameter and do not pass it down.
	(dump_nested_types): Remove cpp_check parameter and do not pass it to
	dump_generic_ada_node.
	(print_ada_declaration): Likewise.  Test RECORD_OR_UNION_TYPE_P before
	accessing methods.
	(print_ada_struct_decl): Remove cpp_check parameter and do not pass it
	down.  Use has_nontrivial_methods to recognize C++ classes.  Use return
	value of print_ada_methods.
	(dump_ads): Rename cpp_check parameter to check and adjust prototype.
	Set cpp_check to it before invoking dump_ada_nodes.
	(dump_ada_specs): Likewise.
cp/
	* decl2.c (cpp_check): Change type of first parameter and deal with
	IS_TRIVIAL.

From-SVN: r204344
2013-11-04 07:24:44 +00:00
Paolo Carlini 846276fae1 re PR c++/52071 (Constructor invocation confused)
2013-11-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/52071
	* g++.dg/parse/pr52071.C: New.

From-SVN: r204343
2013-11-04 00:42:09 +00:00
GCC Administrator 1d58d7bf0f Daily bump.
From-SVN: r204342
2013-11-04 00:17:03 +00:00
Paolo Carlini ba0f36b0b0 re PR c++/38313 (g++ fails to parse a member function with a parenthesized type name as its declarator)
/cp
2013-11-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/38313
	* parser.c (cp_parser_constructor_declarator_p): Check that the
	class-name matches current_class_type.

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

	PR c++/38313
	* g++.dg/lookup/name-clash10.C: New.

From-SVN: r204339
2013-11-03 23:49:41 +00:00
Kugan Vivekanandarajah 8df1834931 neon-vcond-gt.c: Scan for vbsl or vbit or vbif.
2013-11-03  Kugan Vivekanandarajah  <kuganv@linaro.org>

	gcc/testsuite/
	* gcc.target/arm/neon-vcond-gt.c: Scan for vbsl or vbit or vbif.
	* gcc.target/arm/neon-vcond-ltgt.c: Scan for vbsl or vbit or vbif.
	* gcc.target/arm/neon-vcond-unordered.c: Scan for vbsl or vbit or
	vbif.

From-SVN: r204336
2013-11-03 22:47:33 +01:00
Marek Polacek b906f4ca81 Implement -fsanitize=vla-bound.
* opts.c (common_handle_option): Handle vla-bound.
	* sanitizer.def (BUILT_IN_UBSAN_HANDLE_VLA_BOUND_NOT_POSITIVE):
	Define.
	* flag-types.h (enum sanitize_code): Add SANITIZE_VLA.
	* asan.c (initialize_sanitizer_builtins): Build BT_FN_VOID_PTR_PTR.
c-family/
	* c-ubsan.c: Don't include hash-table.h.
	(ubsan_instrument_vla): New function.
	* c-ubsan.h: Declare it.
cp/
	* decl.c (cp_finish_decl): Move C++1y bounds checking...
	(compute_array_index_type): ...here.  Add VLA instrumentation.
	Call stabilize_vla_size.
	(grokdeclarator): Don't call stabilize_vla_size here.
c/
	* c-decl.c (grokdeclarator): Add VLA instrumentation.
testsuite/
	* g++.dg/ubsan/cxx1y-vla.C: New test.
	* c-c++-common/ubsan/vla-3.c: New test.
	* c-c++-common/ubsan/vla-2.c: New test.
	* c-c++-common/ubsan/vla-4.c: New test.
	* c-c++-common/ubsan/vla-1.c: New test.

From-SVN: r204334
2013-11-03 17:59:31 +00:00
Uros Bizjak 612211412c crtfastmath.c: Compile only for !_SOFT_FLOAT.
* config/i386/crtfastmath.c: Compile only for !_SOFT_FLOAT.
	* config/i386/crtprec.c: Ditto.

From-SVN: r204327
2013-11-03 11:12:12 +01:00
GCC Administrator 856d2d6ccf Daily bump.
From-SVN: r204324
2013-11-03 00:17:24 +00:00
Bill Schmidt 93895581f9 rs6000.c (rs6000_expand_vector_set): Adjust for little endian.
gcc:

2013-11-02  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

	* config/rs6000/rs6000.c (rs6000_expand_vector_set): Adjust for
	little endian.

gcc/testsuite:

2013-11-02  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

	* gcc.dg/vmx/vec-set.c: New.

From-SVN: r204321
2013-11-03 00:06:43 +00:00
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