platform/upstream/gcc.git
11 years agoAArch64 backend support for EXTR instruction.
Ian Bolton [Tue, 19 Mar 2013 16:17:14 +0000 (16:17 +0000)]
AArch64 backend support for EXTR instruction.

From-SVN: r196795

11 years agore PR tree-optimization/56273 (Bogus -Warray-bounds warning)
Richard Biener [Tue, 19 Mar 2013 12:57:33 +0000 (12:57 +0000)]
re PR tree-optimization/56273 (Bogus -Warray-bounds warning)

2013-03-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56273
* passes.c (init_optimization_passes): Move second VRP after DOM.

* gcc.dg/tree-ssa/vrp47.c: Adjust.
* c-c++-common/uninit-17.c: Likewise.

From-SVN: r196792

11 years agoUse C99 bool instead of enum try.
Janne Blomqvist [Tue, 19 Mar 2013 11:13:32 +0000 (13:13 +0200)]
Use C99 bool instead of enum try.

2013-03-19  Janne Blomqvist  <jb@gcc.gnu.org>

* libgfortran.h: Include stdbool.h.
(enum try): Remove.
(notify_std): Change return type to bool.
* intrinsics/chmod.c: Don't include stdbool.h.
* intrinsics/execute_command_line.c: Likewise.
* io/format.c: Likewise.
* io/list_read.c (nml_parse_qualifier): Change return type to bool.
(nml_read_obj): Likewise.
(nml_get_obj_data): Likewise.
* io/transfer.c (read_block_form): Fix comment.
(write_buf): Change return type to bool.
* io/write.c: Don't include stdbool.h.
* io/write_float.def (output_float): Change return type to bool.
(output_float_FMT_G_ ## x): Change type of result variable.
* runtime/error.c (notify_std): Change return type to bool.

From-SVN: r196791

11 years agoRemove gcc/testsuite/ and testsuite/ leading paths from
Jakub Jelinek [Tue, 19 Mar 2013 10:35:47 +0000 (11:35 +0100)]
Remove gcc/testsuite/ and testsuite/ leading paths from
filenames.

From-SVN: r196790

11 years agoFix up ChangeLog entry formatting.
Jakub Jelinek [Tue, 19 Mar 2013 10:02:23 +0000 (11:02 +0100)]
Fix up ChangeLog entry formatting.

From-SVN: r196789

11 years agoDaily bump.
GCC Administrator [Tue, 19 Mar 2013 09:20:32 +0000 (09:20 +0000)]
Daily bump.

From-SVN: r196788

11 years agoi386.md (*movti_internal): Merge from *movti_internal_rex64 and *movti_internal_sse.
Uros Bizjak [Tue, 19 Mar 2013 07:36:15 +0000 (08:36 +0100)]
i386.md (*movti_internal): Merge from *movti_internal_rex64 and *movti_internal_sse.

* config/i386/i386.md (*movti_internal): Merge from
*movti_internal_rex64 and *movti_internal_sse.  Use x64 isa attribute.
(*movdi_internal): Merge with *movdi_internal_rex64.  Use x64 and
nox64 isa attributes.

From-SVN: r196784

11 years agotree-ssa-structalias.c (find): Use gcc_checking_assert.
Richard Biener [Mon, 18 Mar 2013 13:58:29 +0000 (13:58 +0000)]
tree-ssa-structalias.c (find): Use gcc_checking_assert.

2013-03-18  Richard Biener  <rguenther@suse.de>

* tree-ssa-structalias.c (find): Use gcc_checking_assert.
(unite): Likewise.
(merge_node_constraints): Likewise.
(build_succ_graph): Likewise.
(valid_graph_edge): Inline into single caller.
(unify_nodes): Likewise.  Use bitmap_set_bit return value
and cache varinfo.
(scc_visit): Fix formatting and variable use.
(do_sd_constraint): Use gcc_checking_assert.
(do_ds_constraint): Likewise.
(do_complex_constraint): Likewise.
(condense_visit): Likewise.  Cleanup.
(dump_pred_graph): New function.
(perform_var_substitution): Dump the pred-graph before
variable substitution.
(find_equivalent_node): Use gcc_checking_assert.
(rewrite_constraints): Guard checking loop with ENABLE_CHECKING.

From-SVN: r196783

11 years agotree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Remove cond_expr_stmt_lis...
Richard Biener [Mon, 18 Mar 2013 13:57:33 +0000 (13:57 +0000)]
tree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Remove cond_expr_stmt_list argument and do not gimplify the built expression.

2013-03-18  Richard Biener  <rguenther@suse.de>

* tree-vect-loop-manip.c (vect_create_cond_for_alias_checks):
Remove cond_expr_stmt_list argument and do not gimplify the
built expression.
(vect_loop_versioning): Adjust.
* tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
Cleanup to use less temporaries.
(vect_create_data_ref_ptr): Cleanup.

From-SVN: r196782

11 years agore PR tree-optimization/56635 (internal compiler error: in find_lattice_value, at...
Jakub Jelinek [Mon, 18 Mar 2013 13:01:49 +0000 (14:01 +0100)]
re PR tree-optimization/56635 (internal compiler error: in find_lattice_value, at tree-complex.c:15)

PR tree-optimization/56635
* fold-const.c (operand_equal_p): For MEM_REF and TARGET_MEM_REF,
require types_compatible_p types.

* g++.dg/torture/pr56635.C: New test.

From-SVN: r196781

11 years agostormy16.c (xstormy16_expand_prologue): Remove spurious backslash.
Nick Clifton [Mon, 18 Mar 2013 10:43:50 +0000 (10:43 +0000)]
stormy16.c (xstormy16_expand_prologue): Remove spurious backslash.

* config/stormy16/stormy16.c (xstormy16_expand_prologue): Remove
spurious backslash.

From-SVN: r196779

11 years agomn10300.c (mn10300_get_live_callee_saved_regs): Add missing line to comment describin...
Nick Clifton [Mon, 18 Mar 2013 10:40:24 +0000 (10:40 +0000)]
mn10300.c (mn10300_get_live_callee_saved_regs): Add missing line to comment describing function.

* config/mn10300/mn10300.c (mn10300_get_live_callee_saved_regs):
Add missing line to comment describing function.

From-SVN: r196778

11 years agore PR tree-optimization/56210 (invalid -Warray-bounds warning)
Richard Biener [Mon, 18 Mar 2013 10:33:11 +0000 (10:33 +0000)]
re PR tree-optimization/56210 (invalid -Warray-bounds warning)

2013-03-18  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56210
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
Handle string / character search functions.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Likewise.

From-SVN: r196777

11 years agore PR middle-end/56483 (LTO issue with expanding GIMPLE_COND)
Richard Biener [Mon, 18 Mar 2013 10:29:43 +0000 (10:29 +0000)]
re PR middle-end/56483 (LTO issue with expanding GIMPLE_COND)

2013-03-18  Richard Biener  <rguenther@suse.de>

PR middle-end/56483
* cfgexpand.c (expand_gimple_cond): Inline gimple_cond_single_var_p
and implement properly.
* gimple.h (gimple_cond_single_var_p): Remove.

From-SVN: r196776

11 years agotree-data-ref.h (find_data_references_in_loop): Declare.
Richard Biener [Mon, 18 Mar 2013 10:25:42 +0000 (10:25 +0000)]
tree-data-ref.h (find_data_references_in_loop): Declare.

2013-03-18  Richard Biener  <rguenther@suse.de>

* tree-data-ref.h (find_data_references_in_loop): Declare.
* tree-data-ref.c (get_references_in_stmt): Use a stack
vector pre-allocated in the callers.
(find_data_references_in_stmt): Adjust.
(graphite_find_data_references_in_stmt): Likewise.
(create_rdg_vertices): Likewise.
(find_data_references_in_loop): Export.
* tree-vect-data-refs.c (vect_analyze_data_ref_dependences):
Compute dependences here...
(vect_analyze_data_refs): ...not here.  When we encounter
a non-vectorizable data reference in basic-block vectorization
truncate the data reference vector.  Do not bother to
fixup data-dependence information for gather loads.
* tree-vect-slp.c (vect_slp_analyze_bb_1): Check the number
of data references, as reported.

From-SVN: r196775

11 years agoPR libstdc++/55977 (partial, std::vector and std::deque bits)
Paolo Carlini [Mon, 18 Mar 2013 10:15:56 +0000 (10:15 +0000)]
PR libstdc++/55977 (partial, std::vector and std::deque bits)

2013-03-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/55977 (partial, std::vector and std::deque bits)
* include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
_InputIterator, std::input_iterator_tag)): Use emplace_back.
* include/bits/deque.tcc (_M_range_initialize(_InputIterator,
_InputIterator, std::input_iterator_tag)): Likewise.
* testsuite/23_containers/vector/cons/55977.cc: New.
* testsuite/23_containers/deque/cons/55977.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.

From-SVN: r196774

11 years agogfortran.h (gfc_option_t): Remove flag_whole_file.
Tobias Burnus [Mon, 18 Mar 2013 09:50:23 +0000 (10:50 +0100)]
gfortran.h (gfc_option_t): Remove flag_whole_file.

2013-03-18  Tobias Burnus  <burnus@net-b.de>

        * gfortran.h (gfc_option_t): Remove flag_whole_file.
        * invoke.texi (-fno-whole-file): Remove.
        * lang.opt (fwhole-file): Change to Ignore.
        * options.c (gfc_init_options, gfc_post_options,
        gfc_handle_option): Remove !flag_whole_file handling
        * parse.c (resolve_all_program_units,
        * translate_all_program_units,
        gfc_parse_file): Ditto.
        * resolve.c (resolve_global_procedure): Ditto.
        * trans-decl.c (gfc_get_symbol_decl,
        * gfc_get_extern_function_decl,
        gfc_create_module_variable): Ditto.
        * trans-types.c (gfc_get_derived_type): Ditto.

From-SVN: r196773

11 years agore PR tree-optimization/3713 (Pointers to functions or member functions are not folde...
Richard Biener [Mon, 18 Mar 2013 08:53:42 +0000 (08:53 +0000)]
re PR tree-optimization/3713 (Pointers to functions or member functions are not folded or inlined)

2013-03-18  Richard Biener  <rguenther@suse.de>

PR tree-optimization/3713
* tree-ssa-sccvn.c (visit_copy): Simplify.  Always propagate
has_constants and expr.
(stmt_has_constants): Properly valueize SSA names when deciding
whether the stmt has constants.

* g++.dg/ipa/devirt-12.C: New testcase.

From-SVN: r196771

11 years agotree-ssa-loop-manip.c (find_uses_to_rename): Do not scan the whole function when...
Richard Biener [Mon, 18 Mar 2013 08:50:35 +0000 (08:50 +0000)]
tree-ssa-loop-manip.c (find_uses_to_rename): Do not scan the whole function when there is nothing to do.

2013-03-18  Richard Biener  <rguenther@suse.de>

* tree-ssa-loop-manip.c (find_uses_to_rename): Do not scan the
whole function when there is nothing to do.
* tree-ssa-loop.c (pass_vectorize): Remove TODO_update_ssa.
* tree-vectorizer.c (vectorize_loops): Update virtual and
loop-closed SSA once.
* tree-vect-loop.c (vect_transform_loop): Do not update SSA here.

From-SVN: r196770

11 years agore PR c/56113 (out of memory when compiling a function with many goto labels (50k...
Richard Biener [Mon, 18 Mar 2013 08:46:44 +0000 (08:46 +0000)]
re PR c/56113 (out of memory when compiling a function with many goto labels (50k > ))

2013-03-18  Richard Biener  <rguenther@suse.de>

PR middle-end/56113
* domwalk.c (bb_postorder): New global static.
(cmp_bb_postorder): New function.
(walk_dominator_tree): Replace scheme imposing an order for
visiting dominator sons by one sorting them at the time they
are pushed on the stack.

From-SVN: r196769

11 years agore PR middle-end/39326 (Segmentation fault with -O1, out of memory with -O2)
Richard Biener [Mon, 18 Mar 2013 08:42:57 +0000 (08:42 +0000)]
re PR middle-end/39326 (Segmentation fault with -O1, out of memory with -O2)

2013-03-18  Richard Biener  <rguenther@suse.de>

PR tree-optimization/39326
* tree-ssa-loop-im.c (refs_independent_p): Exploit symmetry.
(struct mem_ref): Replace mem member with ao_ref typed member.
(MEM_ANALYZABLE): Adjust.
(memref_eq): Likewise.
(mem_ref_alloc): Likewise.
(gather_mem_refs_stmt): Likewise.
(mem_refs_may_alias_p): Use the ao_ref to query the alias oracle.
(execute_sm_if_changed_flag_set): Adjust.
(execute_sm): Likewise.
(ref_always_accessed_p): Likewise.
(refs_independent_p): Likewise.
(can_sm_ref_p): Likewise.

From-SVN: r196768

11 years agore PR c/56566 (bogus "is narrower than values of its type" warning)
Jakub Jelinek [Mon, 18 Mar 2013 07:10:33 +0000 (08:10 +0100)]
re PR c/56566 (bogus "is narrower than values of its type" warning)

PR c/56566
* tree.c (tree_int_cst_min_precision): For integer_zerop (value)
return 1 even for !unsignedp.

* c-c++-common/pr56566.c: New test.

From-SVN: r196767

11 years agore PR c++/54359 ([C++0x] decltype in member function's trailing return type when...
Jason Merrill [Mon, 18 Mar 2013 03:41:10 +0000 (23:41 -0400)]
re PR c++/54359 ([C++0x] decltype in member function's trailing return type when defined outside of class)

PR c++/54359
PR c++/56639
* parser.c (cp_parser_direct_declarator): Bail if we see a
qualified-id not at namespace scope.

From-SVN: r196765

11 years ago* g++.dg/template/abstract-dr337.C: XFAIL.
Jason Merrill [Mon, 18 Mar 2013 03:40:16 +0000 (23:40 -0400)]
* g++.dg/template/abstract-dr337.C: XFAIL.

From-SVN: r196764

11 years agoDaily bump.
GCC Administrator [Mon, 18 Mar 2013 00:22:10 +0000 (00:22 +0000)]
Daily bump.

From-SVN: r196762

11 years agore PR c++/17232 ([DR 1640] classes and class template specializations treated differe...
Jason Merrill [Sun, 17 Mar 2013 20:32:17 +0000 (16:32 -0400)]
re PR c++/17232 ([DR 1640] classes and class template specializations treated differently w.r.t. core issue #337)

PR c++/17232
PR c++/56642
* typeck2.c (abstract_virtuals_error_sfinae): Revert complete_type
change for now.

From-SVN: r196758

11 years agoi386.md (isa): Add x64 and nox64.
Uros Bizjak [Sun, 17 Mar 2013 19:33:40 +0000 (20:33 +0100)]
i386.md (isa): Add x64 and nox64.

* config/i386/i386.md (isa): Add x64 and nox64.
(enabled): Define x64 for TARGET_64BIT and nox64 for !TARGET_64BIT.
(*pushtf): Enable *roF alternative for x64 isa only.
(*pushxf): Merge with *pushxf_nointeger.  Use Yx*r constraint. Set
mode attribute of integer alternatives to DImode for TARGET_64BIT.
(*pushdf): Merge with *pushdf_rex64.  Use x64 and nox64 isa attributes.
(*movtf_internal): Merge from *movtf_internal_rex64 and
*movtf_internal_sse.  Use x64 and nox64 isa attributes.
(*movxf_internal): Merge with *movxf_internal_rex64.  Use x64 and
nox64 isa attributes.
(*movdf_internal): Merge with *movdf_internal_rex64.  Use x64 and
nox64 isa attributes.
* config/i386/constraints.md (Yd): Do not set for TARGET_64BIT.

From-SVN: r196757

11 years agoalpha.c (TARGET_LRA_P): New define.
Uros Bizjak [Sun, 17 Mar 2013 19:01:36 +0000 (20:01 +0100)]
alpha.c (TARGET_LRA_P): New define.

* config/alpha/alpha.c (TARGET_LRA_P): New define.

From-SVN: r196756

11 years agore PR libstdc++/55979 ([C++11] std::list range construction imposes unnecessary conve...
Paolo Carlini [Sun, 17 Mar 2013 18:27:52 +0000 (18:27 +0000)]
re PR libstdc++/55979 ([C++11] std::list range construction imposes unnecessary conversion constraints)

2013-03-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/55979
* include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
_InputIterator, __false_type)): Use emplace_back.
* testsuite/23_containers/list/cons/55979.cc: New.
* testsuite/23_containers/list/modifiers/1.h: Adjust.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.

From-SVN: r196755

11 years agore PR target/56640 (bootstrap failure on arm-linux-gnueabi{,hf})
Jakub Jelinek [Sun, 17 Mar 2013 16:28:16 +0000 (17:28 +0100)]
re PR target/56640 (bootstrap failure on arm-linux-gnueabi{,hf})

PR target/56640
* config/arm/arm.h (REG_CLASS_NAMES): Add "SFP_REG" and "AFP_REG"
class names.  Remove trailing comma after "ALL_REGS".

From-SVN: r196753

11 years ago* sv.po: Update.
Joseph Myers [Sun, 17 Mar 2013 15:50:07 +0000 (15:50 +0000)]
* sv.po: Update.

From-SVN: r196751

11 years agocgraph.h (cgraph_get_create_real_symbol_node): Declare.
Jan Hubicka [Sun, 17 Mar 2013 15:43:13 +0000 (16:43 +0100)]
cgraph.h (cgraph_get_create_real_symbol_node): Declare.

* cgraph.h (cgraph_get_create_real_symbol_node): Declare.
* cgraph.c (cgraph_get_create_real_symbol_node): New function.
* cgrpahbuild.c: Use cgraph_get_create_real_symbol_node instead
of cgraph_get_create_node.
* ipa-prop.c (ipa_make_edge_direct_to_target): Likewise.

From-SVN: r196750

11 years agodecl.c (grokdeclarator): Assert that we won't see a pointer to METHOD_TYPE.
Jason Merrill [Sun, 17 Mar 2013 03:11:07 +0000 (23:11 -0400)]
decl.c (grokdeclarator): Assert that we won't see a pointer to METHOD_TYPE.

* decl.c (grokdeclarator): Assert that we won't see a pointer to
METHOD_TYPE.

From-SVN: r196748

11 years agore PR c++/54277 (Template class member referred to with implicit this inside lambda...
Jason Merrill [Sun, 17 Mar 2013 02:41:22 +0000 (22:41 -0400)]
re PR c++/54277 (Template class member referred to with implicit this inside lambda is incorrectly const-qualified)

PR c++/54277
* cp-tree.h (WILDCARD_TYPE_P): Split out from...
(MAYBE_CLASS_TYPE_P): ...here.
* semantics.c (lambda_capture_field_type): Only build a
magic decltype for wildcard types.
(lambda_proxy_type): Likewise.
(finish_non_static_data_member): Get the quals from
the object.

From-SVN: r196747

11 years agore PR c++/55931 ([C++11] Constexpr member function inside a static member is not...
Jason Merrill [Sun, 17 Mar 2013 02:39:51 +0000 (22:39 -0400)]
re PR c++/55931 ([C++11] Constexpr member function inside a static member is not working)

PR c++/55931
* parser.c (cp_parser_template_argument): Don't
fold_non_dependent_expr.

From-SVN: r196746

11 years agoparser.c (cp_parser_lambda_declarator_opt): Use cp_parser_trailing_type_id.
Jason Merrill [Sun, 17 Mar 2013 02:39:37 +0000 (22:39 -0400)]
parser.c (cp_parser_lambda_declarator_opt): Use cp_parser_trailing_type_id.

* parser.c (cp_parser_lambda_declarator_opt): Use
cp_parser_trailing_type_id.

From-SVN: r196745

11 years agore PR c++/45917 (inaccessible types allowed as template argument in nested-name-speci...
Jason Merrill [Sun, 17 Mar 2013 02:39:22 +0000 (22:39 -0400)]
re PR c++/45917 (inaccessible types allowed as template argument in nested-name-specifier)

PR c++/45917
* parser.c (cp_parser_template_id): Don't forget access checks.

From-SVN: r196744

11 years agore PR c++/52374 ([C++11] Fails to transform id-expression into dependent base member...
Jason Merrill [Sun, 17 Mar 2013 02:39:04 +0000 (22:39 -0400)]
re PR c++/52374 ([C++11] Fails to transform id-expression into dependent base member access in lambda expression)

PR c++/52374
* pt.c (tsubst_qualified_id): Use current_nonlambda_class_type.

From-SVN: r196743

11 years agore PR c++/54764 (In class initialization of non-static lambda member can't be used...
Jason Merrill [Sun, 17 Mar 2013 02:38:50 +0000 (22:38 -0400)]
re PR c++/54764 (In class initialization of non-static lambda member can't be used in class with default template paramer)

PR c++/54764
PR c++/55972
* name-lookup.h (tag_scope): Add ts_lambda.
* semantics.c (begin_lambda_type): Use it.
* decl.c (xref_tag_1): Set CLASSTYPE_LAMBDA_EXPR.
* pt.c (check_default_tmpl_args): Ignore lambdas.
(push_template_decl_real): Handle lambdas.
* tree.c (no_linkage_check): Adjust lambda check.

From-SVN: r196742

11 years agore PR c++/56039 (ICE in iterative_hash_template_arg, at cp/pt.c:1606)
Jason Merrill [Sun, 17 Mar 2013 02:38:35 +0000 (22:38 -0400)]
re PR c++/56039 (ICE in iterative_hash_template_arg, at cp/pt.c:1606)

PR c++/56039
* tree.c (strip_typedefs_expr): Complain about lambda, don't abort.

From-SVN: r196741

11 years agore PR c++/54359 ([C++0x] decltype in member function's trailing return type when...
Jason Merrill [Sun, 17 Mar 2013 02:38:21 +0000 (22:38 -0400)]
re PR c++/54359 ([C++0x] decltype in member function's trailing return type when defined outside of class)

PR c++/54359
* parser.c (cp_parser_direct_declarator): Fix late return
for out-of-class defn of member function.

From-SVN: r196740

11 years agore PR c++/55357 (-Wshadow warns about lambda function parameters matching variables...
Jason Merrill [Sun, 17 Mar 2013 02:38:01 +0000 (22:38 -0400)]
re PR c++/55357 (-Wshadow warns about lambda function parameters matching variables in outer scope)

PR c++/55357
* semantics.c (maybe_add_lambda_conv_op): Clear DECL_NAME of copied
parms to avoid duplicate -Wshadow warnings.

From-SVN: r196739

11 years ago* search.c (lookup_base): Handle NULL_TREE.
Jason Merrill [Sun, 17 Mar 2013 02:37:33 +0000 (22:37 -0400)]
* search.c (lookup_base): Handle NULL_TREE.

From-SVN: r196738

11 years agore PR c++/56481 (endless loop compiling a C++ file)
Jason Merrill [Sun, 17 Mar 2013 02:37:21 +0000 (22:37 -0400)]
re PR c++/56481 (endless loop compiling a C++ file)

PR c++/56481
* semantics.c (potential_constant_expression_1): Use of 'this' in
a non-constexpr function makes the expression not potentially
constant.

From-SVN: r196737

11 years agore PR c++/52748 ([C++11] N3276 changes to decltype)
Jason Merrill [Sun, 17 Mar 2013 02:37:09 +0000 (22:37 -0400)]
re PR c++/52748 ([C++11] N3276 changes to decltype)

N3276
PR c++/52748
* cp-tree.h (tsubst_flags): Add tf_decltype.
* call.c (build_cxx_call): Don't build a temporary if it's set.
(build_over_call): Make sure it's only passed to build_cxx_call.
* parser.c (cp_parser_primary_expression): Add decltype_p parm.
(cp_parser_unary_expression): Likewise.
(cp_parser_cast_expression): Likewise.
(cp_parser_binary_expression): Likewise.
(cp_parser_assignment_expression): Likewise.
(cp_parser_postfix_expression): Likewise.  Pass tf_decltype.
(cp_parser_explicit_instantiation): Add decltype_p.  Force a
temporary for a call on the LHS of a comma.
(cp_parser_decltype): Pass true to decltype_p parms.
* pt.c (tsubst) [DECLTYPE_TYPE]: Pass tf_decltype.
(tsubst_copy_and_build): Pass tf_decltype down only for
CALL_EXPR and the RHS of COMPOUND_EXPR.
* tree.c (build_cplus_new): Call complete_type_or_maybe_complain.

From-SVN: r196736

11 years agocp-tree.h (abstract_class_use): New enum.
Jason Merrill [Sun, 17 Mar 2013 02:36:55 +0000 (22:36 -0400)]
cp-tree.h (abstract_class_use): New enum.

* cp-tree.h (abstract_class_use): New enum.
* typeck2.c (pending_abstract_type): Add use field.
(abstract_virtuals_error_sfinae): Add overloads taking
abstract_class_use instead of tree.
* typeck.c (build_static_cast_1): Call it.
* except.c (is_admissible_throw_operand_or_catch_parameter): Call it.
* pt.c: Adjust calls.
* decl.c (cp_finish_decl): Don't handle functions specially.
(grokdeclarator): Always check return type.
* init.c (build_new_1): Adjust call.

From-SVN: r196735

11 years agoDR 337 PR c++/17232
Jason Merrill [Sun, 17 Mar 2013 02:36:40 +0000 (22:36 -0400)]
DR 337 PR c++/17232

DR 337
PR c++/17232
* pt.c (tsubst) [ARRAY_TYPE]: Use abstract_virtuals_error_sfinae.
* typeck2.c (abstract_virtuals_error_sfinae): Call complete_type.

From-SVN: r196734

11 years agoDR 657
Jason Merrill [Sun, 17 Mar 2013 02:36:26 +0000 (22:36 -0400)]
DR 657

DR 657
* pt.c (tsubst_function_type): Call abstract_virtuals_error_sfinae.
(tsubst_arg_types): Likewise.

From-SVN: r196733

11 years agoDR 1518 PR c++/54835
Jason Merrill [Sun, 17 Mar 2013 02:36:08 +0000 (22:36 -0400)]
DR 1518 PR c++/54835

DR 1518
PR c++/54835
* call.c (convert_like_real): Check for explicit constructors
even for value-initialization.

From-SVN: r196732

11 years agore PR c++/54946 (ICE on template parameter from cast char-pointer in C++11 constexpr...
Jason Merrill [Sun, 17 Mar 2013 02:35:50 +0000 (22:35 -0400)]
re PR c++/54946 (ICE on template parameter from cast char-pointer in C++11 constexpr struct)

PR c++/54946
* pt.c (convert_nontype_argument): Handle invalid pointer.

From-SVN: r196731

11 years ago* parser.c (cp_parser_lambda_expression): Use nreverse.
Jason Merrill [Sun, 17 Mar 2013 02:35:36 +0000 (22:35 -0400)]
* parser.c (cp_parser_lambda_expression): Use nreverse.

From-SVN: r196730

11 years agore PR c++/56447 ([C++11] Lambda in template has conversion op it shouldn't have)
Jason Merrill [Sun, 17 Mar 2013 02:35:18 +0000 (22:35 -0400)]
re PR c++/56447 ([C++11] Lambda in template has conversion op it shouldn't have)

PR c++/56447
PR c++/55532
* pt.c (instantiate_class_template_1): Instantiate lambda capture
list here.
(tsubst_copy_and_build): Not here.

From-SVN: r196729

11 years agore PR c++/55017 ([DR 1051] [C++11] Rvalue-reference member should cause copy construc...
Jason Merrill [Sun, 17 Mar 2013 02:35:01 +0000 (22:35 -0400)]
re PR c++/55017 ([DR 1051] [C++11] Rvalue-reference member should cause copy constructor to be deleted, but still declared)

PR c++/55017
* method.c (walk_field_subobs): Disallow copy of rvalue ref.

From-SVN: r196728

11 years agore PR c++/55240 ([c++0x] ICE on non-static data member initialization using 'auto...
Jason Merrill [Sun, 17 Mar 2013 02:34:45 +0000 (22:34 -0400)]
re PR c++/55240 ([c++0x] ICE on non-static data member initialization using 'auto' variable from containing function)

PR c++/55240
* parser.c (parsing_nsdmi): New.
* semantics.c (outer_automatic_var_p): Check it.
(finish_id_expression): Likewise.
* cp-tree.h: Declare it.

From-SVN: r196727

11 years agore PR c++/55241 ([C++11] diagnostics show sizeof...(T) as sizeof(T...))
Jason Merrill [Sun, 17 Mar 2013 02:34:31 +0000 (22:34 -0400)]
re PR c++/55241 ([C++11] diagnostics show sizeof...(T) as sizeof(T...))

PR c++/55241
* error.c (dump_expr) [SIZEOF_EXPR]: Print sizeof... properly.

From-SVN: r196726

11 years agoparser.c (lookup_literal_operator): Correct parm/arg naming mixup.
Jason Merrill [Sun, 17 Mar 2013 02:34:20 +0000 (22:34 -0400)]
parser.c (lookup_literal_operator): Correct parm/arg naming mixup.

* parser.c (lookup_literal_operator): Correct parm/arg naming
mixup.

From-SVN: r196725

11 years agore PR c++/56238 (ICE in tree check: expected record_type or union_type or qual_union_...
Jason Merrill [Sun, 17 Mar 2013 02:34:03 +0000 (22:34 -0400)]
re PR c++/56238 (ICE in tree check: expected record_type or union_type or qual_union_type, have template_type_parm in lookup_conversions, at cp/search.c:2515)

PR c++/56238
* pt.c (fold_non_dependent_expr_sfinae): Check
instantiation_dependent_expression_p.

From-SVN: r196724

11 years agore PR debug/49090 (provide a way to recognize defaulted template parameters)
Jason Merrill [Sun, 17 Mar 2013 02:33:50 +0000 (22:33 -0400)]
re PR debug/49090 (provide a way to recognize defaulted template parameters)

PR debug/49090
* dwarf2out.c (gen_generic_params_dies): Indicate default arguments
with DW_AT_default_value.

From-SVN: r196723

11 years agore PR c++/56095 (Crash casting function pointer as non-type template argument)
Jason Merrill [Sun, 17 Mar 2013 02:33:38 +0000 (22:33 -0400)]
re PR c++/56095 (Crash casting function pointer as non-type template argument)

PR c++/56095
* class.c (resolve_address_of_overloaded_function): Accept a
reference to function for target_type.
(instantiate_type): Likewise.
* pt.c (convert_nontype_argument): Pass it to
convert_nontype_argument_function.

From-SVN: r196722

11 years agoDaily bump.
GCC Administrator [Sun, 17 Mar 2013 00:21:11 +0000 (00:21 +0000)]
Daily bump.

From-SVN: r196721

11 years agore PR libstdc++/56468 (Clang exposes bug with unexpected forward-declaration of type_...
Jonathan Wakely [Sat, 16 Mar 2013 20:01:16 +0000 (20:01 +0000)]
re PR libstdc++/56468 (Clang exposes bug with unexpected forward-declaration of type_info)

PR libstdc++/56468
* libsupc++/exception_ptr.h (type_info): Declare.

From-SVN: r196709

11 years agore PR libstdc++/56002 ([C++11] allow generic locks to be used without requiring platt...
Jonathan Wakely [Sat, 16 Mar 2013 19:45:53 +0000 (19:45 +0000)]
re PR libstdc++/56002 ([C++11] allow generic locks to be used without requiring plattform support for threads)

PR libstdc++/56002
* include/std/mutex (lock_guard, unique_lock, lock): Define without
depending on _GLIBCXX_HAS_GTHREADS.
* testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.

From-SVN: r196706

11 years ago* tree.c (cp_tree_equal): Fix a pasto.
Jakub Jelinek [Sat, 16 Mar 2013 19:36:41 +0000 (20:36 +0100)]
* tree.c (cp_tree_equal): Fix a pasto.

From-SVN: r196705

11 years agore PR c++/56607 (GCC fails to warn on division by zero)
Jakub Jelinek [Sat, 16 Mar 2013 19:35:41 +0000 (20:35 +0100)]
re PR c++/56607 (GCC fails to warn on division by zero)

PR c++/56607
* typeck.c (cp_build_binary_op): When calling warn_for_div_by_zero,
pass op1 through maybe_constant_value first.

* g++.dg/warn/Wdiv-by-zero-2.C: New test.
* c-c++-common/pr56607.c: New test.

From-SVN: r196704

11 years agore PR c++/56582 (ICE on negative array index in C++11 constant expression evaluation)
Paolo Carlini [Sat, 16 Mar 2013 10:02:11 +0000 (10:02 +0000)]
re PR c++/56582 (ICE on negative array index in C++11 constant expression evaluation)

/cp
2013-03-16  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56582
* semantics.c (cxx_eval_array_reference): Check for negative index.

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

PR c++/56582
* g++.dg/cpp0x/constexpr-array5.C: New.

From-SVN: r196701

11 years ago* gnatvsn.ads (Library_Version): Bump to 4.9.
Eric Botcazou [Sat, 16 Mar 2013 09:16:49 +0000 (09:16 +0000)]
* gnatvsn.ads (Library_Version): Bump to 4.9.

From-SVN: r196700

11 years ago* crontab: Enable snapshots from gcc-4_8-branch.
Jakub Jelinek [Sat, 16 Mar 2013 07:22:35 +0000 (08:22 +0100)]
* crontab: Enable snapshots from gcc-4_8-branch.

From-SVN: r196698

11 years ago* BASE-VER: Set to 4.9.0.
Jakub Jelinek [Sat, 16 Mar 2013 07:09:59 +0000 (08:09 +0100)]
* BASE-VER: Set to 4.9.0.

From-SVN: r196697

11 years agore PR libstdc++/56492 (std::packaged_task requires CopyConstructible stored task)
Jonathan Wakely [Sat, 16 Mar 2013 02:48:06 +0000 (02:48 +0000)]
re PR libstdc++/56492 (std::packaged_task requires CopyConstructible stored task)

PR libstdc++/56492
* include/std/future (__future_base::_Result): Add result_type
typedef.
(__future_base::_S_allocate_result): Overload for std::allocator.
(__future_base::_Task_setter): Use _Result::result_type instead of
deducing the type from the task.
(__future_base::_Task_state): Store allocator to allow shared state
to be reset.  Replace std::function with member of target object type
accessed via ...
(__future_base::_Task_state_base): New abstract base class.
(__future_base::_Task_state_base::_M_run): New virtual function to
invoke type-erased target object.
(__future_base::_Task_state_base::_M_reset): New virtual function to
create new shared_state using same target object and allocator.
(__future_base::__create_task_state): Allocate a new _Task_state.
(packaged_task::packaged_task): Use __create_task_state.
(packaged_task::reset): Use _Task_state_base::_M_reset.
* testsuite/30_threads/packaged_task/cons/56492.cc: New.

From-SVN: r196695

11 years agoDaily bump.
GCC Administrator [Sat, 16 Mar 2013 00:18:04 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r196694

11 years ago* gcc.pot: Regenerate.
Joseph Myers [Fri, 15 Mar 2013 17:44:12 +0000 (17:44 +0000)]
* gcc.pot: Regenerate.

From-SVN: r196683

11 years ago* cpplib.pot: Regenerate.
Joseph Myers [Fri, 15 Mar 2013 17:43:27 +0000 (17:43 +0000)]
* cpplib.pot: Regenerate.

From-SVN: r196682

11 years agore PR fortran/56615 (Wrong code with TRANSFER of arrays of character with stride -1)
Tobias Burnus [Fri, 15 Mar 2013 10:09:39 +0000 (11:09 +0100)]
re PR fortran/56615 (Wrong code with TRANSFER of arrays of character with stride -1)

2013-03-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56615
        * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Pack arrays
        if they are not simply contiguous.

2013-03-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56615
        * gfortran.dg/transfer_intrinsic_5.f90: New.

From-SVN: r196675

11 years agounwind-cxx.h: Include sys/sdt.h if detected.
Tom Tromey [Fri, 15 Mar 2013 08:55:07 +0000 (08:55 +0000)]
unwind-cxx.h: Include sys/sdt.h if detected.

* libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
(PROBE2): New macro.
* libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
* libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
* configure.ac: Check for sys/sdt.h.
* configure, config.h.in: Rebuild.

From-SVN: r196674

11 years agomovti.c: Don't test for x64 mingw.
Kai Tietz [Fri, 15 Mar 2013 07:15:37 +0000 (08:15 +0100)]
movti.c: Don't test for x64 mingw.

* gcc.target/i386/movti.c: Don't test for x64 mingw.
* gcc.target/i386/pr20020-1.c: Likewise.
* gcc.target/i386/pr20020-2.c: Likewise.
* gcc.target/i386/pr20020-3.c: Likewise.
* gcc.target/i386/pr53425-1.c: Likewise.
* gcc.target/i386/pr53425-2.c: Likewise.
* gcc.target/i386/pr55093.c: Likewise.
* gcc.target/i386/pr53907.c: Adjust test for LLP64 targets.

From-SVN: r196673

11 years agore PR debug/56307 (FAIL: gcc.dg/tree-ssa/pr55579.c scan-tree-dump esra "Created a...
Jakub Jelinek [Fri, 15 Mar 2013 07:06:49 +0000 (08:06 +0100)]
re PR debug/56307 (FAIL: gcc.dg/tree-ssa/pr55579.c scan-tree-dump esra "Created a debug-only replacement for s")

PR debug/56307
* gcc.dg/tree-ssa/pr55579.c: Add -fvar-tracking-assignments to
dg-options.  Remove 32-bit hppa*-*-hpux* xfail.

From-SVN: r196672

11 years agoDocument HLE / RTM intrinsics
Andi Kleen [Fri, 15 Mar 2013 04:31:43 +0000 (04:31 +0000)]
Document HLE / RTM intrinsics

The TSX HLE/RTM intrinsics were missing documentation. Add this to the
manual.

gcc/:
2013-03-14  Andi Kleen  <ak@linux.intel.com>

PR target/56619
* doc/extend.texi: Document __ATOMIC_HLE_ACQUIRE,
__ATOMIC_HLE_RELEASE. Document __builtin_ia32 TSX intrincs.
Document _x* TSX intrinsics.

From-SVN: r196671

11 years agoDaily bump.
GCC Administrator [Fri, 15 Mar 2013 00:19:11 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r196669

11 years agore PR libstdc++/56613 (map::operator[](key_type&&) fails with custom allocator)
Jonathan Wakely [Thu, 14 Mar 2013 23:28:11 +0000 (23:28 +0000)]
re PR libstdc++/56613 (map::operator[](key_type&&) fails with custom allocator)

PR libstdc++/56613
* include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
allocator_traits instead of calling construct directly.
* testsuite/23_containers/map/56613.cc: New.

From-SVN: r196666

11 years agoAdd support for TLS in MicroBlaze
Edgar E. Iglesias [Thu, 14 Mar 2013 15:43:23 +0000 (15:43 +0000)]
Add support for TLS in MicroBlaze

 * configure.ac: Add MicroBlaze TLS support detection.
 * configure: Regenerate.
 * config/microblaze/microblaze-protos.h: (microblaze_cannot_force_const_mem,
   microblaze_tls_referenced_p, symbol_mentioned_p,
   label_mentioned_p): Add prototypes.
 * config/microblaze/microblaze.c (microblaze_address_type): Add ADDRESS_TLS
   and tls_reloc address types.
   (microblaze_address_info): Add tls_reloc.
   (TARGET_HAVE_TLS): Define.
   (get_tls_get_addr, microblaze_tls_symbol_p, microblaze_tls_operand_p_1,
    microblaze_tls_referenced_p, microblaze_cannot_force_const_mem,
    symbol_mentioned_p, label_mentioned_p, tls_mentioned_p, load_tls_operand,
    microblaze_call_tls_get_addr, microblaze_legitimize_tls_address): New functions.
   (microblaze_classify_unspec): Handle UNSPEC_TLS.
   (get_base_reg): Use microblaze_tls_symbol_p.
   (microblaze_classify_address): Handle TLS.
   (microblaze_legitimate_pic_operand): Use symbol_mentioned_p, label_mentioned_p
    and microblaze_tls_referenced_p.
   (microblaze_legitimize_address): Handle TLS.
   (microblaze_address_insns): Handle ADDRESS_TLS.
   (pic_address_needs_scratch): Handle TLS.
   (print_operand_address): Handle TLS.
   (microblaze_expand_prologue): Check TLS_NEEDS_GOT.
   (microblaze_expand_move): Handle TLS.
   (microblaze_legitimate_constant_p): Check microblaze_cannot_force_const_mem
    and microblaze_tls_symbol_p.
   (TARGET_CANNOT_FORCE_CONST_MEM): Define.
 * config/microblaze/microblaze.h (TLS_NEEDS_GOT): Define
   (PIC_OFFSET_TABLE_REGNUM): Set.
 * config/microblaze/linux.h (TLS_NEEDS_GOT): Define.
 * config/microblaze/microblaze.md (UNSPEC_TLS): Define.
   (addsi3, movsi_internal2, movdf_internal): Update constraints
 * config/microblaze/predicates.md (arith_plus_operand): Define
   (move_operand): Redefine as move_src_operand, check microblaze_tls_referenced_p.

Co-Authored-By: David Holsgrove <david.holsgrove@xilinx.com>
From-SVN: r196659

11 years agore PR c++/56614 (error: default argument 'std::vector<E>(std::initializer_list<E...
Jason Merrill [Thu, 14 Mar 2013 13:09:11 +0000 (09:09 -0400)]
re PR c++/56614 (error: default argument 'std::vector<E>(std::initializer_list<E>{((const E*)(& ._0)), 1u}, (*(const std::allocator<E>*)(& std::allocator<E>())))' uses local variable '._0')

PR c++/56614
* decl.c (local_variable_p_walkfn): Check DECL_ARTIFICIAL again.

From-SVN: r196658

11 years agore PR c++/56346 (FAIL: g++.dg/tls/thread_local3.C -std=gnu++11 (test for excess errors))
Jason Merrill [Thu, 14 Mar 2013 13:08:36 +0000 (09:08 -0400)]
re PR c++/56346 (FAIL: g++.dg/tls/thread_local3.C -std=gnu++11 (test for excess errors))

PR c++/56346
* decl.c (register_dtor_fn): Pass null to __cxa_thread_atexit
dso_handle parm on targets without __cxa_atexit.

From-SVN: r196657

11 years agoAArch64 should return CC_NZ for AND operation (part 2)
Ian Bolton [Thu, 14 Mar 2013 12:04:26 +0000 (12:04 +0000)]
AArch64 should return CC_NZ for AND operation (part 2)

From-SVN: r196656

11 years agore PR tree-optimization/53265 (Warn when undefined behavior implies smaller iteration...
Jakub Jelinek [Thu, 14 Mar 2013 10:54:38 +0000 (11:54 +0100)]
re PR tree-optimization/53265 (Warn when undefined behavior implies smaller iteration count)

PR tree-optimization/53265
* gcc.dg/graphite/scop-3.c (toto): Increase array size to avoid
undefined behavior.
* gcc.dg/graphite/id-6.c (test): Likewise.
* gcc.dg/graphite/pr35356-2.c: Adjust regexp patterns to only look for
MIN_EXPR and MAX_EXPR in GIMPLE stmts.

From-SVN: r196655

11 years agoAArch64 should return CC_NZ for AND operation.
Ian Bolton [Thu, 14 Mar 2013 10:48:51 +0000 (10:48 +0000)]
AArch64 should return CC_NZ for AND operation.

From-SVN: r196654

11 years agore PR tree-optimization/53265 (Warn when undefined behavior implies smaller iteration...
Jakub Jelinek [Thu, 14 Mar 2013 09:13:36 +0000 (10:13 +0100)]
re PR tree-optimization/53265 (Warn when undefined behavior implies smaller iteration count)

PR tree-optimization/53265
* common.opt (Waggressive-loop-optimizations): New option.
* tree-ssa-loop-niter.c: Include tree-pass.h.
(do_warn_aggressive_loop_optimizations): New function.
(record_estimate): Call it.  Don't add !is_exit bounds to loop->bounds
if number_of_latch_executions returned constant.
(estimate_numbers_of_iterations_loop): Call number_of_latch_executions
early.  If number_of_latch_executions returned constant, set
nb_iterations_upper_bound back to it.
* cfgloop.h (struct loop): Add warned_aggressive_loop_optimizations
field.
* Makefile.in (tree-ssa-loop-niter.o): Depend on $(TREE_PASS_H).
* doc/invoke.texi (-Wno-aggressive-loop-optimizations): Document.

* gcc.dg/pr53265.c: New test.
* gcc.dg/torture/pr49518.c: Add -Wno-aggressive-loop-optimizations
to dg-options.
* g++.dg/opt/longbranch2.C (EBCOTLut): Double sizes of a2 and a3
arrays.
* gcc.dg/tree-ssa/cunroll-10.c (main): Rename to foo.  Add argument
n, use it as high bound instead of 4.

* unwind-dw2.c (execute_cfa_program): Avoid
-Waggressive-array-optimizations warnings for DW_CFA_GNU_window_save
on targets with DWARF_FRAME_REGISTERS < 32.

* testsuite/libmudflap.c/fail37-frag.c: Add optimization barrier.

From-SVN: r196650

11 years agot-aarch64-linux (MULTARCH_DIRNAME): Remove.
Jakub Jelinek [Thu, 14 Mar 2013 08:52:13 +0000 (09:52 +0100)]
t-aarch64-linux (MULTARCH_DIRNAME): Remove.

* config/aarch64/t-aarch64-linux (MULTARCH_DIRNAME): Remove.
(MULTILIB_OSDIRNAMES): Set.
* genmultilib: If defaultosdirname doesn't start with :: , set
defaultosdirname2 instead, clear it and emit two . multilib_raw
entries instead of just one.

From-SVN: r196649

11 years ago*: Regenerate.
Benjamin Kosnik [Thu, 14 Mar 2013 03:13:14 +0000 (03:13 +0000)]
*: Regenerate.

2013-03-13  Benjamin Kosnik  <bkoz@redhat.com>

* doc/html/*: Regenerate.

From-SVN: r196647

11 years agolinux.h (TARGET_DEFAULT): Remove MASK_USERMODE.
Kaz Kojima [Thu, 14 Mar 2013 03:01:53 +0000 (03:01 +0000)]
linux.h (TARGET_DEFAULT): Remove MASK_USERMODE.

* config/sh/linux.h (TARGET_DEFAULT): Remove MASK_USERMODE.
(SUBTARGET_OVERRIDE_OPTIONS): Set TARGET_USERMODE as default.
* config/sh/netbsd-elf.h (TARGET_DEFAULT): Remove MASK_USERMODE.
(SUBTARGET_OVERRIDE_OPTIONS): New.

From-SVN: r196646

11 years agoDaily bump.
GCC Administrator [Thu, 14 Mar 2013 00:17:54 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r196645

11 years agoUse pthread_equal rather than != to compare thread IDs.
Andrew John Hughes [Wed, 13 Mar 2013 21:21:27 +0000 (21:21 +0000)]
Use pthread_equal rather than != to compare thread IDs.

2013-03-12  Andrew John Hughes  <gnu.andrew@redhat.com>

* include/posix-threads.h:
(_Jv_MutexCheckMonitor(_Jv_Mutex_t)): Use
pthread_equal rather than !=.

From-SVN: r196639

11 years agore PR target/49880 (SuperH: ICE when -m4 is used with -mdiv=call-div1)
Oleg Endo [Wed, 13 Mar 2013 18:09:10 +0000 (18:09 +0000)]
re PR target/49880 (SuperH: ICE when -m4 is used with -mdiv=call-div1)

PR target/49880
* config/sh/sh.opt (FPU_SINGLE_ONLY): New mask.
(musermode): Convert to Var(TARGET_USERMODE).
* config/sh/sh.h (SELECT_SH2A_SINGLE_ONLY, SELECT_SH4_SINGLE_ONLY,
MASK_ARCH): Add MASK_FPU_SINGLE_ONLY.
* config/sh/sh.c (sh_option_override): Use
TARGET_FPU_DOUBLE || TARGET_FPU_SINGLE_ONLY for call-fp case.
* config/sh/sh.md (udivsi3_i1, divsi3_i1): Remove ! TARGET_SH4
condition.
(udivsi3_i4, divsi3_i4): Use TARGET_FPU_DOUBLE condition instead of
TARGET_SH4.
(udivsi3_i4_single, divsi3_i4_single): Use
TARGET_FPU_SINGLE_ONLY || TARGET_FPU_DOUBLE instead of TARGET_HARD_SH4.

PR target/49880
* config/sh/lib1funcs.S (sdivsi3_i4, udivsi3_i4): Enable for SH2A.
(sdivsi3, udivsi3): Remove SH4 check and always compile these functions.

PR target/49880
* gcc.target/sh/pr49880-1.c: New.
* gcc.target/sh/pr49880-2.c: New.
* gcc.target/sh/pr49880-3.c: New.
* gcc.target/sh/pr49880-4.c: New.
* gcc.target/sh/pr49880-5.c: New.

From-SVN: r196636

11 years agocygwin.h (SHARED_LIBGCC_SPEC): Make shared libgcc the default setting.
Dave Korn [Wed, 13 Mar 2013 15:17:54 +0000 (15:17 +0000)]
cygwin.h (SHARED_LIBGCC_SPEC): Make shared libgcc the default setting.

* config/i386/cygwin.h (SHARED_LIBGCC_SPEC): Make shared libgcc the
default setting.

From-SVN: r196634

11 years agoalias-decl-32.C: Remove redundant bits.
Paolo Carlini [Wed, 13 Mar 2013 12:26:39 +0000 (12:26 +0000)]
alias-decl-32.C: Remove redundant bits.

2013-03-13  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/alias-decl-32.C: Remove redundant bits.

From-SVN: r196633

11 years agore PR tree-optimization/56608 (SLP seems to produce incorrect value with -ffast-math)
Richard Biener [Wed, 13 Mar 2013 12:15:06 +0000 (12:15 +0000)]
re PR tree-optimization/56608 (SLP seems to produce incorrect value with -ffast-math)

2013-03-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56608
* tree-vect-slp.c (vect_schedule_slp): Do not remove scalar
calls when vectorizing basic-blocks.

* gcc.dg/vect/fast-math-bb-slp-call-3.c: New testcase.

From-SVN: r196632

11 years agore PR c++/56611 ([C++11] Template instantiation failure with variadic arguments and...
Paolo Carlini [Wed, 13 Mar 2013 11:44:32 +0000 (11:44 +0000)]
re PR c++/56611 ([C++11] Template instantiation failure with variadic arguments and template aliases)

2013-03-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56611
* g++.dg/cpp0x/alias-decl-32.C: New.

From-SVN: r196631

11 years agore PR libstdc++/56609 ([C++11] Several type traits give incorrect results for std...
Paolo Carlini [Wed, 13 Mar 2013 11:15:45 +0000 (11:15 +0000)]
re PR libstdc++/56609 ([C++11] Several type traits give incorrect results for std::nullptr_t)

2013-03-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/56609
* include/std/type_traits (is_fundamental): Add std::nullptr_t.
* testsuite/20_util/is_fundamental/value.cc: Extend.
* testsuite/20_util/is_compound/value.cc: Likewise.

From-SVN: r196630

11 years agore PR plugins/45078 (config/vxworks-dummy.h not installed as a plugin header on some...
Jakub Jelinek [Wed, 13 Mar 2013 09:47:41 +0000 (10:47 +0100)]
re PR plugins/45078 (config/vxworks-dummy.h not installed as a plugin header on some archs)

PR plugins/45078
* config.gcc: On arm, mips, sh and sparc add vxworks-dummy.h to
tm_file.

From-SVN: r196629

11 years agoDaily bump.
GCC Administrator [Wed, 13 Mar 2013 00:19:53 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r196625

11 years ago* doc/invoke.texi (-Waddr-space-convert): Move into the table earlier.
Jakub Jelinek [Tue, 12 Mar 2013 13:25:01 +0000 (14:25 +0100)]
* doc/invoke.texi (-Waddr-space-convert): Move into the table earlier.

From-SVN: r196614