Richard Guenther [Thu, 29 Apr 2010 14:10:39 +0000 (14:10 +0000)]
re PR bootstrap/43935 (Bootstrap failure: cc1: all warnings being treated as errors)
2010-04-29 Richard Guenther <rguenther@suse.de>
PR bootstrap/43935
* plugin.h (invoke_plugin_callbacks): Annotate arguments
with ATTRIBUTE_UNUSED.
From-SVN: r158901
H.J. Lu [Thu, 29 Apr 2010 12:51:09 +0000 (12:51 +0000)]
Replace INSN_P with NONDEBUG_INSN_P.
2010-04-29 H.J. Lu <hongjiu.lu@intel.com>
PR target/43921
* config/i386/i386.c (get_some_local_dynamic_name): Replace
INSN_P with NONDEBUG_INSN_P.
(distance_non_agu_define): Likewise.
(distance_agu_use): Likewise.
From-SVN: r158900
Bernd Schmidt [Thu, 29 Apr 2010 11:04:30 +0000 (11:04 +0000)]
re PR bootstrap/43858 (Bootstrap failure for powerpc-apple-darwin9: cannot compute suffix of object files)
From Dominique d'Humieres <dominiq@lps.ens.fr>
PR bootstrap/43858
* ifcvt.c (dead_or_predicable): Use df_simulate_find_defs to compute
test_set.
From-SVN: r158898
Martin Jambor [Thu, 29 Apr 2010 10:46:20 +0000 (12:46 +0200)]
Adde a missing Changelog entry to describe a change in
gcc/lto-streamer-in.c committed yesterday.
From-SVN: r158897
Brian Hackett [Thu, 29 Apr 2010 09:01:56 +0000 (09:01 +0000)]
plugin.h (invoke_plugin_callbacks): New inline function.
2010-04-29 Brian Hackett <bhackett1024@gmail.com>
* plugin.h (invoke_plugin_callbacks): New inline function.
* plugin.c (flag_plugin_added): New global flag.
(add_new_plugin): Initialize above flag.
(invoke_plugin_callbacks): Rename to ...
(invoke_plugin_callbacks_full): ... this.
From-SVN: r158896
Jan Hubicka [Thu, 29 Apr 2010 07:10:38 +0000 (09:10 +0200)]
* lto-symtab.c (lto_symtab_entry_def) Add vnode.
(lto_varpool_replace_node): New.
(lto_symtab_resolve_symbols): Resolve varpool nodes.
(lto_symtab_merge_decls_1): Prefer decls with varpool node.
(lto_symtab_merge_cgraph_nodes_1): Merge varpools.
* cgraph.h (varpool_node_ptr): New type.
(varpool_node_ptr): New vector.
(varpool_node_set_def): New structure.
(varpool_node_set): New type.
(varpool_node_set): New vector.
(varpool_node_set_element_def): New structure.
(varpool_node_set_element, const_varpool_node_set_element): New types.
(varpool_node_set_iterator): New type.
(varpool_node): Add prev pointers, add used_from_other_partition,
in_other_partition.
(varpool_node_set_new, varpool_node_set_find, varpool_node_set_add,
varpool_node_set_remove, dump_varpool_node_set, debug_varpool_node_set,
varpool_get_node, varpool_remove_node): Declare.
(vsi_end_p, vsi_next, vsi_node, vsi_start, varpool_node_in_set_p,
varpool_node_set_size): New inlines.
* cgraph.c (dump_cgraph_node): Dump asm names of aliases.
* tree-pass.h (varpool_node_set_def): Forward declare.
(ipa_opt_pass_d): Summary writting takes vnode sets too.
(ipa_write_optimization_summaries): Update prototype.
* ipa-cp.c (ipcp_write_summary): Update.
* ipa-reference.c (ipa_reference_write_summary): Update.
* lto-cgraph.c (lto_output_varpool_node): New static function.
(output_varpool): New function.
(input_varpool_node): New static function.
(input_varpool_1): New function.
(input_cgraph): Input varpool.
* ipa-pure-const.c (pure_const_write_summary): Update.
* lto-streamer-out.c (lto_output): Update, output varpool too.
(write_global_stream): Kill WPA hack.
(produce_asm_for_decls): Update.
(output_alias_pair_p): Handle variables.
(output_unreferenced_globals): Output only needed partition of varpool.
* ipa-inline.c (inline_write_summary): Update.
* lto-streamer-in.c (lto_input_tree_ref, lto_input_tree): Do not build cgraph.
* lto-section-in.c (lto_section_name): Add varpool and jump funcs.
* ipa.c (hash_varpool_node_set_element, eq_varpool_node_set_element,
varpool_node_set_new, varpool_node_set_add,
varpool_node_set_remove, varpool_node_set_find, dump_varpool_node_set,
debug_varpool_node_set): New functions.
* passes.c (rest_of_decl_compilation): when in LTO do not finalize.
(execute_one_pass): Process new decls too.
(ipa_write_summaries_2): Pass around vsets.
(ipa_write_summaries_1): Likewise.
(ipa_write_summaries): Build vset; be more selective about cgraph nodes
to add.
(ipa_write_optimization_summaries_1): Pass around vsets.
(ipa_write_optimization_summaries): Likewise.
* varpool.c (varpool_get_node): New.
(varpool_node): Update doubly linked lists.
(varpool_remove_node): New.
(dump_varpool_node): More dumping.
(varpool_enqueue_needed_node): Update doubly linked lists.
(decide_is_variable_needed): Kill ltrans hack.
(varpool_finalize_decl): Kill lto hack.
(varpool_assemble_decl): Skip decls in other partitions.
(varpool_assemble_pending_decls): Update doubly linkes lists.
(varpool_empty_needed_queue): Likewise.
(varpool_extra_name_alias): Likewise.
* lto-streamer.c (lto_get_section_name): Add vars section.
* lto-streamer.h (lto_section_type): Update.
(output_varpool, input_varpool): Declare.
* lto.c (lto_varpool_node_sets): New.
(lto_1_to_1_map): Partition varpool too.
(globalize_context_t, globalize_cross_file_statics,
lto_scan_statics_in_ref_table, lto_scan_statics_in_cgraph_node,
lto_scan_statics_in_remaining_global_vars): Remove.
(lto_promote_cross_file_statics): Rewrite.
(get_filename_for_set): Take vset argument.
(lto_wpa_write_files): Pass around vsets.
From-SVN: r158854
Eric Botcazou [Thu, 29 Apr 2010 06:31:10 +0000 (06:31 +0000)]
Fix long lines
From-SVN: r158853
Mike Stump [Thu, 29 Apr 2010 03:18:30 +0000 (03:18 +0000)]
darwin.h (CC1_SPEC): Ignore -mdynamic-no-pic for now.
* config/i386/darwin.h (CC1_SPEC): Ignore -mdynamic-no-pic for
now.
Fixes stubify-1.mm on i686-apple-darwin*.
From-SVN: r158852
Mike Stump [Thu, 29 Apr 2010 03:00:36 +0000 (03:00 +0000)]
uninit-pred-1_b.C: Use dg-message instead of dg-excess-errors.
* g++.dg/uninit-pred-1_b.C: Use dg-message instead of
dg-excess-errors.
* g++.dg/uninit-pred-2_b.C: Likewise.
From-SVN: r158851
GCC Administrator [Thu, 29 Apr 2010 00:17:07 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r158850
Tobias Burnus [Wed, 28 Apr 2010 20:43:18 +0000 (22:43 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2010-04-28 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
PR fortran/43919
* simplify.c (simplify_cobound): Handle scalar coarrays.
2010-04-28 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
PR fortran/43919
* gfortran.dg/coarray_11.f90: Add scalar-coarrays test case.
From-SVN: r158843
Eric Botcazou [Wed, 28 Apr 2010 20:03:02 +0000 (20:03 +0000)]
lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for record or union type with RECORD_OR_UNION_TYPE_P predicate.
* lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for
record or union type with RECORD_OR_UNION_TYPE_P predicate.
(lto_input_ts_type_tree_pointers): Likewise.
* lto-streamer-out.c (pack_ts_type_value_fields): Likewise.
(lto_output_ts_type_tree_pointers): Likewise.
From-SVN: r158841
Matthias Klose [Wed, 28 Apr 2010 19:25:58 +0000 (19:25 +0000)]
plugin.exp: Run the plugindir tests.
2010-04-28 Matthias Klose <doko@ubuntu.com>
* gcc.dg/plugin/plugin.exp: Run the plugindir tests.
* gcc.dg/plugindir1.c: Move to gcc.dg/plugin/plugindir1.c.
* gcc.dg/plugindir2.c: Move to gcc.dg/plugin/plugindir2.c.
* gcc.dg/plugindir3.c: Move to gcc.dg/plugin/plugindir3.c.
* gcc.dg/plugindir4.c: Move to gcc.dg/plugin/plugindir4.c.
From-SVN: r158840
Eric Botcazou [Wed, 28 Apr 2010 19:17:45 +0000 (19:17 +0000)]
Fix nits
From-SVN: r158839
Eric Botcazou [Wed, 28 Apr 2010 19:11:50 +0000 (19:11 +0000)]
Uniquization of constants at the Tree level
Uniquization of constants at the Tree level
* tree.h (DECL_IN_CONSTANT_POOL): New macro
(tree_decl_with_vis): Add in_constant_pool bit, move shadowed_for_var_p
bit to the end.
(tree_output_constant_def): Declare.
* gimplify.c (gimplify_init_constructor): When using block copy,
uniquize the constant constructor on the RHS.
* lto-streamer-in.c (unpack_ts_decl_with_vis_value_fields): Deal
with DECL_IN_CONSTANT_POOL flag.
* lto-streamer-out.c (pack_ts_decl_with_vis_value_fields): Likewise.
* varasm.c (make_decl_rtl): Deal with variables belonging to the
global constant pool.
(assemble_variable): Deal with symbols belonging to the tree constant
pool.
(get_constant_section): Add ALIGN parameter and simplify.
(build_constant_desc): Build a VAR_DECL and attach it to the symbol.
(assemble_constant_contents): Use the expression of the VAR_DECL.
(output_constant_def_contents): Use the alignment of the VAR_DECL.
(tree_output_constant_def): New global function.
(mark_constant): Use the expression of the VAR_DECL.
(place_block_symbol): Use the alignment of the VAR_DECL and the size
of its expression.
(output_object_block): Likewise and assemble the expression.
ada/
* gcc-interface/trans.c (gnat_gimplify_expr) <ADDR_EXPR>: Uniquize
constant constructors before taking their address.
From-SVN: r158838
Eric Botcazou [Wed, 28 Apr 2010 19:01:00 +0000 (19:01 +0000)]
lto-streamer.c [...] (tree_htab, [...]): New tree hash table.
* lto-streamer.c [LTO_STREAMER_DEBUG] (tree_htab, tree_hash_entry,
hash_tree, eq_tree): New tree hash table.
(lto_streamer_init) [LTO_STREAMER_DEBUG]: Initialize it.
[LTO_STREAMER_DEBUG] (lto_orig_address_map, lto_orig_address_get,
lto_orig_address_remove): Reimplement.
From-SVN: r158836
Xinliang David Li [Wed, 28 Apr 2010 17:41:31 +0000 (17:41 +0000)]
predicate aware uninitialized analysis
From-SVN: r158835
Uros Bizjak [Wed, 28 Apr 2010 16:56:24 +0000 (18:56 +0200)]
elf.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object type if available.
* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object
type if available.
From-SVN: r158834
Rainer Orth [Wed, 28 Apr 2010 16:24:28 +0000 (16:24 +0000)]
re PR target/22224 (Several Tru64 UNIX testsuite failures: Length of .lcomm was less than 1)
PR target/22224
* config/alpha/osf5.h (ASM_OUTPUT_LOCAL): Redefine.
From-SVN: r158831
Martin Jambor [Wed, 28 Apr 2010 14:05:54 +0000 (16:05 +0200)]
cgraph.h (struct cgraph_node): New field indirect_calls.
2010-04-28 Martin Jambor <mjambor@suse.cz>
* cgraph.h (struct cgraph_node): New field indirect_calls.
(struct cgraph_indirect_call_info): New type.
(struct cgraph_edge): Removed field indirect_call. New fields
indirect_info, indirect_inlining_edge and indirect_unknown_callee.
(cgraph_create_indirect_edge): Declare.
(cgraph_make_edge_direct): Likewise.
(enum LTO_cgraph_tags): New item LTO_cgraph_indirect_edge.
* ipa-prop.h (struct ipa_param_call_note): Removed.
(struct ipa_node_params): Removed field param_calls.
(ipa_create_all_structures_for_iinln): Declare.
* cgraph.c: Described indirect edges and uids in initial comment.
(cgraph_add_edge_to_call_site_hash): New function.
(cgraph_edge): Search also among the indirect edges, use
cgraph_add_edge_to_call_site_hash to add edges to the call site hash.
(cgraph_set_call_stmt): Possibly turn an indirect edge into a direct
one, use cgraph_add_edge_to_call_site_hash to add edges to the call
site hash.
(initialize_inline_failed): Assign a reason to indirect edges.
(cgraph_create_edge_1): New function.
(cgraph_create_edge): Moved some functionality to
cgraph_create_edge_1.
(cgraph_create_indirect_edge): New function.
(cgraph_edge_remove_callee): Add an assert checking for
non-indirectness.
(cgraph_edge_remove_caller): Special-case indirect edges.
(cgraph_remove_edge): Likewise.
(cgraph_set_edge_callee): New function.
(cgraph_redirect_edge_callee): Use cgraph_set_edge_callee.
(cgraph_make_edge_direct): New function.
(cgraph_update_edges_for_call_stmt_node): Do nothing only when also
the declaration of the call statement matches.
(cgraph_node_remove_callees): Special-case indirect edges.
(cgraph_clone_edge): Likewise.
(cgraph_clone_node): Clone also the indirect edges.
(dump_cgraph_node): Dump indirect_inlining_edge flag instead of
indirect_call, dump count of indirect_calls edges.
* ipa-prop.c (iinlining_processed_edges): New variable.
(ipa_note_param_call): Create indirect edges instead of
creating notes. New parameter node.
(ipa_analyze_call_uses): New parameter node, pass it on to
ipa_note_param_call.
(ipa_analyze_stmt_uses): Likewise.
(ipa_analyze_params_uses): Pass node to ipa_analyze_stmt_uses.
(print_edge_addition_message): Work on edges rather than on notes.
(update_call_notes_after_inlining): Likewise, renamed to
update_indirect_edges_after_inlining.
(ipa_create_all_structures_for_iinln): New function.
(ipa_free_node_params_substructures): Do not free notes.
(ipa_edge_duplication_hook): Propagate bits within
iinlining_processed_edges bitmap.
(ipa_node_duplication_hook): Do not duplicate notes.
(free_all_ipa_structures_after_ipa_cp): Renamed to
ipa_free_all_structures_after_ipa_cp.
(free_all_ipa_structures_after_iinln): Renamed to
ipa_free_all_structures_after_iinln.g
(ipa_write_param_call_note): Removed.
(ipa_read_param_call_note): Removed.
(ipa_write_indirect_edge_info): New function.
(ipa_read_indirect_edge_info): Likewise.
(ipa_write_node_info): Do not stream notes, do stream information
in indirect edges.
(ipa_read_node_info): Likewise.
(lto_ipa_fixup_call_notes): Removed.
* ipa-cp.c (pass_ipa_cp): Set stmt_fixup to NULL.
* ipa-inline.c (pass_ipa_inline): Likewise.
* cgraphunit.c (verify_cgraph_node): Check also indirect edges.
* cif-code.def (INDIRECT_UNKNOWN_CALL): New reason.
* tree-inline.c (copy_bb): Removed an unnecessary double check for
is_gimple_call.
* tree-inline.c (get_indirect_callee_fndecl): Do not consider indirect
edges.
* lto-cgraph.c (output_outgoing_cgraph_edges): New function.
(output_cgraph): Stream also indirect edges.
(lto_output_edge): Added capability to stream indirect edges.
(input_edge): Likewise.
(input_cgraph_1): Likewise.
* testsuite/gcc.dg/lto/
20091209-1_0.c: New testcase.
From-SVN: r158827
Richard Guenther [Wed, 28 Apr 2010 11:51:31 +0000 (11:51 +0000)]
re PR tree-optimization/43879 (-fipa-pta causes various miscompilations)
2010-04-28 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43879
PR tree-optimization/43909
* tree-ssa-structalias.c (struct variable_info): Add
only_restrict_pointers flag.
(new_var_info): Initialize it. Increment stats.total_vars here.
(create_function_info_for): Do not increment stats.total_vars
here.
(get_function_part_constraint): Fix build with C++.
(insert_into_field_list): Remove.
(push_fields_onto_fieldstack): Properly merge fields.
(create_variable_info_for): Split and simplify.
(create_variable_info_for_1): New piece.
(intra_create_variable_infos): Properly make restrict constraints
from parameters.
* gcc.dg/ipa/ipa-pta-14.c: Adjust.
From-SVN: r158825
Richard Guenther [Wed, 28 Apr 2010 10:28:24 +0000 (10:28 +0000)]
re PR middle-end/43880 (internal compiler error: in make_decl_rtl)
2010-04-28 Richard Guenther <rguenther@suse.de>
PR c++/43880
* tree-inline.c (copy_bind_expr): Also copy bind expr vars
value-exprs.
* g++.dg/torture/pr43880.C: New testcase.
From-SVN: r158824
Manuel López-Ibáñez [Wed, 28 Apr 2010 08:34:01 +0000 (08:34 +0000)]
re PR c++/9335 (repeated diagnostic when maximum template depth is exceeded)
2010-04-28 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c++/9335
cp/
* error.c (print_instantiation_partial_context_line): Handle
recursive instantiation.
(print_instantiation_partial_context): Likewise.
testsuite/
* g++.dg/template/recurse2.C: Update
* g++.dg/template/recurse.C: Update.
* g++.dg/template/pr23510.C: Update.
* lib/prune.exp: Filter out 'recursively instantiated'.
From-SVN: r158823
Jason Merrill [Wed, 28 Apr 2010 01:45:00 +0000 (21:45 -0400)]
* init.c (perform_member_init): Check CLASS_TYPE_P.
From-SVN: r158822
GCC Administrator [Wed, 28 Apr 2010 00:18:42 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r158821
Fabien Chêne [Wed, 28 Apr 2010 00:03:21 +0000 (00:03 +0000)]
re PR c++/29043 (Constructor for POD type with const member without member initializer accepted)
PR c++/29043
* init.c (perform_member_init): check for uninitialized const or
reference members, including array types.
From-SVN: r158817
Jonathan Wakely [Tue, 27 Apr 2010 22:54:13 +0000 (22:54 +0000)]
re PR libstdc++/43865 (C++ in freestanding environment)
2010-04-27 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/43865
* include/c_global/cstdlib (abort, exit): _GLIBCXX_NORETURN typo.
From-SVN: r158812
Eric Botcazou [Tue, 27 Apr 2010 22:02:36 +0000 (22:02 +0000)]
Remove bogus hunk in previous commit
From-SVN: r158811
Jason Merrill [Tue, 27 Apr 2010 21:35:17 +0000 (17:35 -0400)]
tree.c (get_fns): Split out from get_first_fn.
* tree.c (get_fns): Split out from get_first_fn.
* cp-tree.h: Declare it.
* search.c (shared_member_p): Use it.
* semantics.c (finish_qualified_id_expr): Simplify.
(finish_id_expression): Simplify.
From-SVN: r158810
Jason Merrill [Tue, 27 Apr 2010 21:30:56 +0000 (17:30 -0400)]
semantics.c (finish_non_static_data_member): Call maybe_dummy_object whenever object is NULL_TREE.
* semantics.c (finish_non_static_data_member): Call maybe_dummy_object
whenever object is NULL_TREE. Don't do 'this' capture here.
(finish_qualified_id_expr): Pass NULL_TREE.
(finish_id_expression): Likewise.
(lambda_expr_this_capture): Likewise.
From-SVN: r158809
Jason Merrill [Tue, 27 Apr 2010 21:27:04 +0000 (17:27 -0400)]
semantics.c (finish_qualified_id_expr): Use maybe_dummy_object rather than checking current_class_ref directly.
* semantics.c (finish_qualified_id_expr): Use maybe_dummy_object
rather than checking current_class_ref directly.
(finish_call_expr): Likewise.
From-SVN: r158808
Jason Merrill [Tue, 27 Apr 2010 21:26:25 +0000 (17:26 -0400)]
re PR c++/43856 ([C++0x] gcc-4.5.0 fails to transform id-expression into class member access in lambda compound-statement)
PR c++/43856
* name-lookup.c (qualify_lookup): Disqualify lambda op().
* class.c (current_nonlambda_class_type): New fn.
* semantics.c (nonlambda_method_basetype): New.
* cp-tree.h: Declare them.
* tree.c (maybe_dummy_object): Handle implicit 'this' capture.
From-SVN: r158807
Jason Merrill [Tue, 27 Apr 2010 21:25:29 +0000 (17:25 -0400)]
* semantics.c (baselink_for_fns): Correct BASELINK_BINFO.
From-SVN: r158806
Jason Merrill [Tue, 27 Apr 2010 21:21:35 +0000 (17:21 -0400)]
re PR c++/43875 ([C++0x] ICE on invalid lambda return)
PR c++/43875
* semantics.c (lambda_return_type): Complain about
braced-init-list.
From-SVN: r158805
Jonathan Wakely [Tue, 27 Apr 2010 20:57:23 +0000 (20:57 +0000)]
status_cxx200x.xml: Update quick_exit status.
2010-04-27 Jonathan Wakely <jwakely.gcc@gmail.com>
* doc/xml/manual/status_cxx200x.xml: Update quick_exit status.
* doc/html/*: Regenerate.
From-SVN: r158804
Manuel López-Ibáñez [Tue, 27 Apr 2010 20:22:54 +0000 (20:22 +0000)]
invoke.texi (-Wsuggest-attribute=const, [...]): Document.
2010-04-27 Manuel López-Ibáñez <manu@gcc.gnu.org>
Jan Hubicka <hubicka@ucw.cz>
* doc/invoke.texi (-Wsuggest-attribute=const,
-Wsuggest-attribute=pure): Document.
* ipa-pure-const.c: Include toplev.h, intl.h and opts.h.
(function_always_visible_to_compiler_p,
suggest_attribute, warn_function_pure, warn_function_const):
New functions.
(check_call): Improve debug info.
(analyze_function): Do not check availability.
(add_new_function): Check availability.
(propagate): Output warnings.
(skip_function_for_local_pure_const): New function.
(local_pure_const): Use it; output warnings.
* common.opt (Wsuggest-attribute=const,
Wsuggest-attribute=pure): New.
testsuite/
* gcc.dg/pure-2.c: New testcase.
* gcc.dg/const-1.c: New testcase.
Co-Authored-By: Jan Hubicka <hubicka@ucw.cz>
From-SVN: r158803
Jason Merrill [Tue, 27 Apr 2010 20:08:47 +0000 (16:08 -0400)]
re PR c++/43790 ([C++0x] In lambda express, calling member function of non-captured class gives internal compiler error)
PR c++/43790
* tree.c (cv_unqualified): Handle error_mark_node.
From-SVN: r158801
Jason Merrill [Tue, 27 Apr 2010 19:04:23 +0000 (15:04 -0400)]
re PR c++/41468 (SFINAE for expressions doesn't consider ambiguous conversion sequences)
PR c++/41468
* call.c (convert_like_real) [ck_ambig]: Just return error_mark_node
if we don't want errors.
From-SVN: r158799
Jason Merrill [Tue, 27 Apr 2010 19:04:09 +0000 (15:04 -0400)]
re PR c++/41468 (SFINAE for expressions doesn't consider ambiguous conversion sequences)
PR c++/41468
* class.c (convert_to_base): Add complain parameter. Pass
ba_quiet to lookup_base if we don't want errors.
(build_vfield_ref): Pass complain to convert_to_base.
* call.c (convert_like_real): Likewise.
(initialize_reference): Likewise.
(perform_direct_initialization_if_possible): Pass complain to
convert_like_real.
* cp-tree.h: Adjust.
From-SVN: r158798
Fabien Chêne [Tue, 27 Apr 2010 18:56:13 +0000 (18:56 +0000)]
re PR c++/42844 (const variable requires initializer / no explicitly declared default constructor)
PR c++/42844
* decl.c (check_for_uninitialized_const_var): Handle classes that need
constructing, too.
(check_initializer): Call it for classes that need constructing, too.
* class.c (in_class_defaulted_default_constructor): New.
* cp-tree.h: Declare it.
Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r158797
Jakub Jelinek [Tue, 27 Apr 2010 18:12:32 +0000 (20:12 +0200)]
dwarf2out.c (def_cfa_1): After DW_CFA_def_cfa_expression force using DW_CFA_def_cfa instead of...
* dwarf2out.c (def_cfa_1): After DW_CFA_def_cfa_expression
force using DW_CFA_def_cfa instead of DW_CFA_def_cfa_register
or DW_CFA_def_cfa_offset{,_sf}.
From-SVN: r158793
Eric Botcazou [Tue, 27 Apr 2010 17:56:52 +0000 (17:56 +0000)]
* tree.h: Fix truncated long macros.
From-SVN: r158792
Kai Tietz [Tue, 27 Apr 2010 17:48:58 +0000 (17:48 +0000)]
collect2.c (TARGET_64BIT): Redefine to target's default.
2010-04-27 Kai Tietz <kai.tietz@onevision.com>
* collect2.c (TARGET_64BIT): Redefine to target's default.
* tlink.c: Likewise.
* config/i386/cygming.h (USER_LABEL_PREFIX): Define
dependent to TARGET_64BIT and USE_MINGW64_LEADING_UNDERSCORES.
* config/i386/i386.h (CRT_CALL_STATIC_FUNCTION): Use
for underscoring __USER_LABEL_PREFIX__.
* config/i386/mingw-w64.h (SUB_LINK_ENTRY): New macro.
(SUB_LINK_ENTRY32): New.
(SUB_LINK_ENTRY64): New.
(LINK_SPEC): Replace entry point spec by
SUB_LINK_ENTRY.
* config/i386/mingw32 (SUB_LINK_ENTRY32): New.
(SUB_LINK_ENTRY64): New.
(SUB_LINK_ENTRY): New.
(LINK_SPEC): Use SUB_LINK_ENTRY instead of hard-coded entry-point.
(DWARF2_UNWIND_INFO): Error out for use of dw2 unwind when
x64 target is choosen.
* config.in (USE_MINGW64_LEADING_UNDERSCORES): New.
* configure: Regenerated.
* configure.ac (leading-mingw64-underscores): Option added.
From-SVN: r158791
Andrew Haley [Tue, 27 Apr 2010 17:28:08 +0000 (17:28 +0000)]
CopyOnWriteArrayList.java: Fix for empty list.
2010-04-27 Andrew Haley <aph@redhat.com>
* java/util/concurrent/CopyOnWriteArrayList.java: Fix for empty
list.
From-SVN: r158790
Andrew Haley [Tue, 27 Apr 2010 16:35:06 +0000 (16:35 +0000)]
IppResponse.java (parseAttributes): Handle IppValueTag.UNKNOWN.
2010-04-27 Andrew Haley <aph@redhat.com>
* gnu/javax/print/ipp/IppResponse.java (parseAttributes): Handle
IppValueTag.UNKNOWN.
* gnu/javax/print/ipp/IppRequest.java (writeOperationAttributes):
Handle RequestedAttributes.
* gnu/javax/print/ipp/IppPrintService.java (processResponse): Add
DocFlavor.SERVICE_FORMATTED.PAGEABLE and
DocFlavor.SERVICE_FORMATTED.PRINTABLE.
From-SVN: r158789
Jan Hubicka [Tue, 27 Apr 2010 14:56:33 +0000 (16:56 +0200)]
invoke.texi (-fipa-profile): Document.
* doc/invoke.texi (-fipa-profile): Document.
* opts.c (decode_options): Enable ipa-profile at -O1.
* timevar.def (TV_IPA_PROFILE): Define.
* common.opt (fipa-profile): Add.
* cgraph.c (cgraph_clone_node): Set local flag and clear vtable method flag
for clones.
(cgraph_propagate_frequency): Handle only local ones.
* tree-pass.h (pass_ipa_profile): Declare.
* ipa-profile.c (gate_profile): Use flag_ipa_profile.
(pass_ipa_profile): Use TV_IPA_PROFILE.
* ipa.c (ipa_profile): New function.
(gate_ipa_profile): Likewise.
(pass_ipa_profile): New global variable.
* passes.c (pass_ipa_profile): New.
From-SVN: r158788
Roland McGrath [Tue, 27 Apr 2010 14:27:15 +0000 (14:27 +0000)]
configure.ac (--enable-gold): Support both, both/gold and both/bfd to add gold to configdirs without removing ld.
* configure.ac (--enable-gold): Support both, both/gold and
both/bfd to add gold to configdirs without removing ld.
* configure: Regenerated.
* Makefile.def: Add install-gold dependency to install-ld.
* Makefile.in: Regenerated.
Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
From-SVN: r158786
Tobias Burnus [Tue, 27 Apr 2010 14:09:29 +0000 (16:09 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2010-04-27 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_12.f90: Fix dump parsing.
From-SVN: r158785
Nathan Froyd [Tue, 27 Apr 2010 12:48:39 +0000 (12:48 +0000)]
* config/arm/arm.c (arm_expand_builtin): Remove redundant declaration.
From-SVN: r158783
Alexander Monakov [Tue, 27 Apr 2010 12:00:35 +0000 (16:00 +0400)]
1.c (test01): Clarify size definition.
2010-04-27 Alexander Monakov <amonakov@ispras.ru>
* testsuite/22_locale/codecvt/unshift/char/1.c (test01): Clarify size
definition. Use memcpy and memcmp to avoid access beyond allocated
memory.
From-SVN: r158780
Tobias Burnus [Tue, 27 Apr 2010 11:42:07 +0000 (13:42 +0200)]
gfc-internals.texi: Update copyright year.
2010-04-27 Tobias Burnus <burnus@net-b.de>
* gfc-internals.texi: Update copyright year.
* gfortran.texi: Ditto.
* invoke.texi: Ditto.
From-SVN: r158779
Richard Guenther [Tue, 27 Apr 2010 11:27:18 +0000 (11:27 +0000)]
re PR c++/40561 (code does not compile -- compiles fine when replacing != with !(==))
2010-04-27 Richard Guenther <rguenther@suse.de>
PR middle-end/40561
* g++.dg/other/pr40561.C: New testcase.
From-SVN: r158778
Martin Jambor [Tue, 27 Apr 2010 10:07:47 +0000 (12:07 +0200)]
re PR middle-end/43812 (compiling .cc file with -fwhole-program results in ICE, in ipcp_iterate_stage, at ipa-cp.c:760)
2010-04-27 Martin Jambor <mjambor@suse.cz>
PR middle-end/43812
* ipa.c (dissolve_same_comdat_group_list): New function.
(function_and_variable_visibility): Call
dissolve_same_comdat_group_list when comdat group contains external or
newly local nodes.
* cgraphunit.c (verify_cgraph_node): Verify that same_comdat_group
lists are circular and that they contain only DECL_ONE_ONLY nodes.
* testsuite/g++.dg/ipa/pr43812.C: New test.
From-SVN: r158777
Eric Botcazou [Tue, 27 Apr 2010 09:47:13 +0000 (09:47 +0000)]
varasm.c (decode_addr_const): Handle special case of INDIRECT_REF.
* varasm.c (decode_addr_const): Handle special case of INDIRECT_REF.
(const_hash_1) <VECTOR_CST>: New case.
(compare_constant) <VECTOR_CST>: Likewise.
<ADDR_EXPR>: Deal with LABEL_REFs.
(copy_constant) <VECTOR_CST>: New case.
From-SVN: r158776
Jan Hubicka [Tue, 27 Apr 2010 09:44:30 +0000 (11:44 +0200)]
cgraph.c (cgraph_propagate_frequency): New function.
* cgraph.c (cgraph_propagate_frequency): New function.
* cgraph.h (cgraph_propagate_frequency): Declare.
* ipa-inline.c (cgraph_clone_inlined_nodes): Call
cgraph_propagate_frequency.
* testsuite/gcc.dg/ipa/iinline-1.c (main): Rename to...
(test): ... this one.
From-SVN: r158775
Jakub Jelinek [Tue, 27 Apr 2010 09:40:46 +0000 (11:40 +0200)]
* unwind-dw2.c (_Unwind_DebugHook): Add used and noclone attributes.
From-SVN: r158773
Bernd Schmidt [Tue, 27 Apr 2010 09:34:08 +0000 (09:34 +0000)]
re PR target/40657 (allocate local variables with fewer instructions)
PR target/40657
* config/arm/arm.c (thumb1_extra_regs_pushed): New function.
(thumb1_expand_prologue, thumb1_output_function_prologue): Call it
here to determine which regs to push and how much stack to reserve.
PR target/40657
* gcc.target/arm/thumb-stackframe.c: New test.
From-SVN: r158771
Jie Zhang [Tue, 27 Apr 2010 09:15:11 +0000 (09:15 +0000)]
gimple.texi (gimple_statement_with_ops): Remove addresses_taken field.
* doc/gimple.texi (gimple_statement_with_ops): Remove
addresses_taken field.
(gimple_statement_with_memory_ops): Likewise.
From-SVN: r158770
Shujing Zhao [Tue, 27 Apr 2010 08:56:01 +0000 (08:56 +0000)]
pr32207.c: Fix typo in expected warning messages.
* gcc.dg/pr32207.c: Fix typo in expected warning messages.
* gcc.dg/misc-column.c: Likewise.
* gcc.dg/Walways-true-1.c: Likewise.
* gcc.dg/Walways-true-2.c: Likewise.
* gcc.dg/warn-addr-cmp.c: Likewise.
From-SVN: r158769
Tobias Burnus [Tue, 27 Apr 2010 08:41:00 +0000 (10:41 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2010-04-27 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* resolve.c (resolve_allocate_expr): Allow array coarrays.
* trans-types.h (gfc_get_array_type_bounds): Update prototype.
* trans-types.c (gfc_get_array_type_bounds,
gfc_get_array_descriptor_base): Add corank argument.
* trans-array.c (gfc_array_init_size): Handle corank.
(gfc_trans_create_temp_array, gfc_array_allocate,
gfc_conv_expr_descriptor): Add corank argument to call.
* trans-stmt.c (gfc_trans_pointer_assign_need_temp): Ditto.
2010-04-27 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_7.f90: Modified and removed obsolete
tests.
* gfortran.dg/coarray_12.f90: New.
From-SVN: r158768
Jan Hubicka [Tue, 27 Apr 2010 05:41:33 +0000 (07:41 +0200)]
tree-inline.c (eni_inlining_weights): Remove.
* tree-inline.c (eni_inlining_weights): Remove.
(estimate_num_insns): Special case more builtins.
From-SVN: r158766
Shujing Zhao [Tue, 27 Apr 2010 02:40:19 +0000 (02:40 +0000)]
re PR c/32207 (missing warnings about address of 'x'.)
gcc/
2010-04-27 Shujing Zhao <pearly.zhao@oracle.com>
PR c/32207
* c-typeck.c (build_binary_op): Move forward check for comparison
pointer with null pointer constant and adjust the diagnostic message.
gcc/testsuite/
2010-04-27 Shujing Zhao <pearly.zhao@oracle.com>
PR c/32207
* gcc.dg/pr32207.c: New test.
* gcc.dg/misc-column.c: Adjust expected warning.
* gcc.dg/Walways-true-1.c: Likewise.
* gcc.dg/Walways-true-2.c: Likewise.
* gcc.dg/warn-addr-cmp.c: Likewise.
From-SVN: r158765
Dave Korn [Tue, 27 Apr 2010 02:24:51 +0000 (02:24 +0000)]
Missing changelog from last commit!
ChangeLog:
2010-04-27 Dave Korn <dave.korn.cygwin@gmail.com>
PR lto/42776
* configure.ac (--enable-lto): Refactor handling so libelf tests
are only performed inside then-clause of ACX_ELF_TARGET_IFELSE,
and allow LTO to be explicitly enabled on non-ELF platforms that
are known to support it inside else-clause.
* configure: Regenerate.
gcc/ChangeLog
2010-04-27 Dave Korn <dave.korn.cygwin@gmail.com>
PR lto/42776
* configure.ac (gcc_cv_as_section_has_align): Set if installed
binutils supports extended .section directive needed by LTO, or
warn if older binutils found.
(LTO_BINARY_READER): New AC_SUBST'd variable.
(LTO_USE_LIBELF): Likewise.
* gcc/config.gcc (lto_binary_reader): New target-specific configure
variable.
* gcc/Makefile.in (LTO_BINARY_READER): Import AC_SUBST'd autoconf var.
(LTO_USE_LIBELF): Likewise.
* configure: Regenerate.
* collect2.c (is_elf): Rename from this ...
(is_elf_or_coff): ... to this, and recognize and allow i386 COFF
object files in addition to ELF-formatted ones.
(scan_prog_file): Caller updated. Also allow for LTO info marker
symbol to be prefixed or not by an extra underscore.
* config/i386/t-cygming (winnt.o): Also depend on LTO_STREAMER_H.
* config/i386/winnt.c: Also #include lto-streamer.h
(i386_pe_asm_named_section): Specify 1-byte section alignment for
LTO named sections.
(i386_pe_asm_output_aligned_decl_common): Add comment.
(i386_pe_maybe_record_exported_symbol): Allow decl arg to be NULL.
From-SVN: r158764
Dave Korn [Tue, 27 Apr 2010 02:23:56 +0000 (02:23 +0000)]
Missing file from last commit!
ChangeLog:
2010-04-27 Dave Korn <dave.korn.cygwin@gmail.com>
PR lto/42776
* configure.ac (--enable-lto): Refactor handling so libelf tests
are only performed inside then-clause of ACX_ELF_TARGET_IFELSE,
and allow LTO to be explicitly enabled on non-ELF platforms that
are known to support it inside else-clause.
* configure: Regenerate.
From-SVN: r158763
Dave Korn [Tue, 27 Apr 2010 02:22:40 +0000 (02:22 +0000)]
re PR lto/42776 (LTO doesn't work on non-ELF platforms.)
ChangeLog:
PR lto/42776
* configure.ac (--enable-lto): Refactor handling so libelf tests
are only performed inside then-clause of ACX_ELF_TARGET_IFELSE,
and allow LTO to be explicitly enabled on non-ELF platforms that
are known to support it inside else-clause.
* configure: Regenerate.
gcc/ChangeLog:
PR lto/42776
* configure.ac (gcc_cv_as_section_has_align): Set if installed
binutils supports extended .section directive needed by LTO, or
warn if older binutils found.
(LTO_BINARY_READER): New AC_SUBST'd variable.
(LTO_USE_LIBELF): Likewise.
* gcc/config.gcc (lto_binary_reader): New target-specific configure
variable.
* gcc/Makefile.in (LTO_BINARY_READER): Import AC_SUBST'd autoconf var.
(LTO_USE_LIBELF): Likewise.
* configure: Regenerate.
* collect2.c (is_elf): Rename from this ...
(is_elf_or_coff): ... to this, and recognize and allow i386 COFF
object files in addition to ELF-formatted ones.
(scan_prog_file): Caller updated. Also allow for LTO info marker
symbol to be prefixed or not by an extra underscore.
* config/i386/t-cygming (winnt.o): Also depend on LTO_STREAMER_H.
* config/i386/winnt.c: Also #include lto-streamer.h
(i386_pe_asm_named_section): Specify 1-byte section alignment for
LTO named sections.
(i386_pe_asm_output_aligned_decl_common): Add comment.
(i386_pe_maybe_record_exported_symbol): Allow decl arg to be NULL.
gcc/lto/ChangeLog:
PR lto/42776
* Make-lang.in (LTO_OBJS): Use LTO_BINARY_READER instead of
hardcoding 'lto-elf.o'.
($(LTO_EXE)): Use LTO_USE_LIBELF instead of hardcoding '-lelf'.
* lto-coff.h: New file.
* lto-coff.c: Likewise.
gcc/testsuite/ChangeLog:
PR lto/42776
* lib/lto.exp (lto_prune_vis_warns): New function.
(lto-link-and-maybe-run): Call it.
From-SVN: r158762
Hans-Peter Nilsson [Tue, 27 Apr 2010 00:56:41 +0000 (00:56 +0000)]
re PR target/43889 (mmix-knuth-mmixware gcc.c-torture/execute/arith-rand.c -O3 -fomit-frame-pointer -funroll-loops)
PR target/43889
* config/mmix/mmix.md ("*divdi3_nonknuth", "*moddi3_nonknuth"):
Add missing earlyclobber for second alternative.
From-SVN: r158760
Hans-Peter Nilsson [Tue, 27 Apr 2010 00:55:30 +0000 (00:55 +0000)]
mmix.md ("*divdi3_nonknuth", [...]): Add missing earlyclobber for second alternative.
* config/mmix/mmix.md ("*divdi3_nonknuth", "*moddi3_nonknuth"):
Add missing earlyclobber for second alternative.
From-SVN: r158759
H.J. Lu [Tue, 27 Apr 2010 00:25:18 +0000 (00:25 +0000)]
Add a run-time testcase for PR tree-optimization/43904.
2010-04-26 H.J. Lu <hongjiu.lu@intel.com>
PR tree-optimization/43904
* gcc.dg/tree-ssa/tailcall-6.c: New.
From-SVN: r158757
GCC Administrator [Tue, 27 Apr 2010 00:20:35 +0000 (00:20 +0000)]
Daily bump.
From-SVN: r158756
Iain Sandoe [Tue, 27 Apr 2010 00:08:28 +0000 (00:08 +0000)]
re PR objc/35165 (Massive failures of objc on i686-apple-darwin9)
2010-04-26 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
PR testsuite/35165
* obj-c++.dg/stubify-2.mm: Restrict to ilp32 targets. Require
Darwin8/OSX10.4 - compatible code generation.
Use scan-rtl-dump.
* obj-c++.dg/stubify-1.mm: Ditto.
* lib/objc-torture.exp: Do not require link success for
"trivial.m" in the runtime checks when dowhat = 'compile'.
* lib/dg-pch.exp: (dg-flags-pch): New Proc.
* objc.dg/stubify-1.m: Restrict to ilp32 targets. Require
Darwin8/OSX10.4 - compatible code generation.
* objc.dg/stubify-2.m: Ditto.
* objc.dg/symtab-1.m: Match '.quad' for m64 code.
* objc.dg/next-runtime-1.m: Ditto.
* objc.dg/stret-2.m: Restrict to ilp32 targets.
* objc.dg/pch/pch.exp: Apply tests to both Gnu and NeXT
runtimes on Darwin.
From-SVN: r158752
Jonathan Wakely [Mon, 26 Apr 2010 23:33:32 +0000 (23:33 +0000)]
status_cxx200x.xml: Update to match n3092.
2010-04-27 Jonathan Wakely <jwakely.gcc@gmail.com>
* doc/xml/manual/status_cxx200x.xml: Update to match n3092.
* doc/html/*: Regenerate.
From-SVN: r158751
Bernd Schmidt [Mon, 26 Apr 2010 21:17:17 +0000 (21:17 +0000)]
df-problems.c (df_simulate_initialize_forwards): Set, don't clear, bits for artificial defs at the top of the block.
* df-problems.c (df_simulate_initialize_forwards): Set, don't clear,
bits for artificial defs at the top of the block.
* fwprop.c (single_def_use_enter_block): Don't call it.
From-SVN: r158750
Mike Stump [Mon, 26 Apr 2010 20:49:37 +0000 (20:49 +0000)]
Update the date to date of checkin.
From-SVN: r158749
Jack Howarth [Mon, 26 Apr 2010 20:48:35 +0000 (20:48 +0000)]
re PR target/43715 (configure option --enable-plugin fails on darwin)
2010-04-26 Jack Howarth <howarth@bromo.med.uc.edu>
PR 43715
* gcc/configure.ac: Use "$gcc_cv_nm -g" on darwin
instead of "$gcc_cv_objdump -T".
Use "-undefined dynamic_lookup" on darwin.
From-SVN: r158748
Jack Howarth [Mon, 26 Apr 2010 20:33:49 +0000 (20:33 +0000)]
re PR target/43715 (configure option --enable-plugin fails on darwin)
2010-04-21 Jack Howarth <howarth@bromo.med.uc.edu>
PR 43715
* testsuite/lib/plugin-support.exp: Use "-undefined
dynamic_lookup" on darwin.
From-SVN: r158747
Jakub Jelinek [Mon, 26 Apr 2010 20:07:10 +0000 (22:07 +0200)]
re PR c/43893 (Error: Invalid controlling predicate with -fopenmp)
PR c/43893
* c-omp.c (c_finish_omp_for): Handle also EQ_EXPR.
* testsuite/libgomp.c/pr43893.c: New test.
* testsuite/libgomp.c++/pr43893.C: New test.
From-SVN: r158745
Nathan Froyd [Mon, 26 Apr 2010 19:10:17 +0000 (19:10 +0000)]
c-parser.c (struct c_token): Move location field up.
* c-parser.c (struct c_token): Move location field up.
* c-tree.h (struct c_typespec): Move expr_const_operands field up.
(struct c_declspecs): Convert typespec_word, storage_class, and
default_int_p into bitfields.
(struct c_declarator): Move loc field up.
From-SVN: r158744
Nathan Froyd [Mon, 26 Apr 2010 18:21:17 +0000 (18:21 +0000)]
cfgloop.h (struct loop): Move can_be_parallel field up.
* cfgloop.h (struct loop): Move can_be_parallel field up.
* ipa-prop.h (struct ip_node_params): Move bitfields up.
* tree-ssa-loop-ivopts.c (struct version_info): Move inv_id field
down.
(struct iv_cand): Convert pos field into a bitfield.
* tree-vectorizer.h (struct _loop_vec_info): Move loop_line_number
field up.
(struct _stmt_vec_info): Shuffle fields for better packing.
From-SVN: r158743
Pedro Alves [Mon, 26 Apr 2010 17:43:53 +0000 (17:43 +0000)]
* filenames.h (PATH_SEPARATOR): Delete.
From-SVN: r158742
Ian Lance Taylor [Mon, 26 Apr 2010 17:27:35 +0000 (17:27 +0000)]
ChangeLog fixes. (Changes to ChangeLog do not get a ChangeLog entry).
From-SVN: r158741
Joseph Myers [Mon, 26 Apr 2010 17:04:01 +0000 (18:04 +0100)]
* sv.po: Update.
From-SVN: r158739
Eric Botcazou [Mon, 26 Apr 2010 16:39:24 +0000 (16:39 +0000)]
varasm.c (IN_NAMED_SECTION): Remove guard.
* varasm.c (IN_NAMED_SECTION): Remove guard.
* config/arm/unknown-elf.h (IN_NAMED_SECTION): Rename to...
(IN_NAMED_SECTION_P): ...this.
(ASM_OUTPUT_ALIGNED_BSS): Adjust for above renaming.
(ASM_OUTPUT_ALIGNED_DECL_LOCAL): Likewise.
From-SVN: r158738
Eric Botcazou [Mon, 26 Apr 2010 16:32:45 +0000 (16:32 +0000)]
gimplify.c (gimplify_cond_expr): Use THEN_ and ELSE_ local variables.
* gimplify.c (gimplify_cond_expr): Use THEN_ and ELSE_ local variables.
Use VOID_TYPE_P for all void type tests. Adjust TYPE variable instead
of shadowing it. Fix comments.
From-SVN: r158737
Steven G. Kargl [Mon, 26 Apr 2010 14:12:11 +0000 (14:12 +0000)]
Change "ditto" to "Ditto.", which is clearly more expressive.
From-SVN: r158734
Jan Hubicka [Mon, 26 Apr 2010 13:33:24 +0000 (15:33 +0200)]
cgraph.c (cgraph_create_node): Set node frequency to normal.
* cgraph.c (cgraph_create_node): Set node frequency to normal.
(cgraph_clone_node): Copy function frequency.
* cgraph.h (node_frequency): New enum
(struct cgraph_node): Add.
* final.c (rest_of_clean_state): Update.
* lto-cgraph.c (lto_output_node): Output node frequency.
(input_overwrite_node): Input node frequency.
* tre-ssa-loop-ivopts (computation_cost): Update.
* lto-streamer-out.c (output_function): Do not output function frequency.
* predict.c (maybe_hot_frequency_p): Update and handle functions executed once.
(cgraph_maybe_hot_edge_p): Likewise; use cgraph frequency instead of
attribute lookup.
(probably_never_executed_bb_p, optimize_function_for_size_p): Update.
(compute_function_frequency): Set noreturn functions to be executed once.
(choose_function_section): Update.
* lto-streamer-in.c (input_function): Do not input function frequency.
* function.c (allocate_struct_function): Do not initialize function frequency.
* function.h (function_frequency): Remove.
(struct function): Remove function frequency.
* ipa-profile.c (CGRAPH_NODE_FREQUENCY): Remove.
(try_update): Update.
* tree-inline.c (initialize_cfun): Do not update function frequency.
* passes.c (pass_init_dump_file): Update.
* i386.c (ix86_compute_frame_layout): Update.
(ix86_pad_returns): Update.
From-SVN: r158732
Richard Guenther [Mon, 26 Apr 2010 11:03:59 +0000 (11:03 +0000)]
lto.c (lto_fixup_type): Deal with non-type TYPE_CONTEXT.
2010-04-26 Richard Guenther <rguenther@suse.de>
* lto.c (lto_fixup_type): Deal with non-type TYPE_CONTEXT.
* gcc.dg/lto/20100426_0.c: New testcase.
From-SVN: r158729
Jie Zhang [Mon, 26 Apr 2010 10:59:34 +0000 (10:59 +0000)]
re PR tree-optimization/43833 (false warning: array subscript is above array bounds with -O3)
PR tree-optimization/43833
* tree-vrp.c (range_int_cst_p): New.
(range_int_cst_singleton_p): New.
(extract_range_from_binary_expr): Optimize BIT_AND_EXPR case
when both operands are constants. Use range_int_cst_p in
BIT_IOR_EXPR case.
testsuite/
PR tree-optimization/43833
gcc.dg/Warray-bounds-8.c: New test case.
From-SVN: r158727
Jan Hubicka [Mon, 26 Apr 2010 09:52:05 +0000 (11:52 +0200)]
* cgraphunit.c (cgraph_copy_node_for_versioning): Fix profile updating.
From-SVN: r158724
Richard Guenther [Mon, 26 Apr 2010 09:19:24 +0000 (09:19 +0000)]
re PR c++/43080 (ICE with anonymous union and -flto)
2010-04-26 Richard Guenther <rguenther@suse.de>
PR lto/43080
* gimple.c (gimple_decl_printable_name): Deal gracefully
with a NULL DECL_NAME.
* g++.dg/lto/
20100423-3_0.C: New testcase.
From-SVN: r158723
Richard Guenther [Mon, 26 Apr 2010 09:13:00 +0000 (09:13 +0000)]
re PR debug/42425 (ICE declaring local class)
2010-04-26 Richard Guenther <rguenther@suse.de>
PR lto/42425
* tree.c (free_lang_data_in_type): Do not free TYPE_CONTEXT
if emitting debug information and it is either a function
or a namespace decl.
* g++.dg/lto/
20100423-2_0.C: New testcase.
From-SVN: r158722
Ira Rosen [Mon, 26 Apr 2010 06:39:27 +0000 (06:39 +0000)]
tree-vectorizer.h (struct _stmt_vec_info): Add new field to determine if the statement is vectorizable...
* tree-vectorizer.h (struct _stmt_vec_info): Add new field to
determine if the statement is vectorizable, and a macro to
access it.
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
Skip statements that can't be vectorized. If the analysis
fails, mark the statement as unvectorizable if vectorizing
basic block.
(vect_compute_data_refs_alignment): Likewise.
(vect_verify_datarefs_alignment): Skip statements marked as
unvectorizable. Add print.
(vect_analyze_group_access): Skip statements that can't be
vectorized. If the analysis fails, mark the statement as
unvectorizable if vectorizing basic block.
(vect_analyze_data_ref_accesses, vect_analyze_data_refs):
Likewise.
* tree-vect-stmts.c (vectorizable_store): Fix the number of
generated stmts for SLP.
(new_stmt_vec_info): Initialize the new field.
* tree-vect-slp.c (vect_build_slp_tree): Fail to vectorize
statements marked as unvectorizable.
From-SVN: r158719
Dave Korn [Mon, 26 Apr 2010 03:41:04 +0000 (03:41 +0000)]
lto.h (lto_elf_file_open): Rename prototype from this ...
* lto.h (lto_elf_file_open): Rename prototype from this ...
(lto_obj_file_open): ... to this.
(lto_elf_file_close): Likewise ...
(lto_obj_file_close): ... and likewise.
(lto_elf_build_section_table): Likewise ...
(lto_obj_build_section_table): ... and likewise.
(lto_elf_begin_section): Likewise ...
(lto_obj_begin_section): ... and likewise.
(lto_elf_append_data): Likewise ...
(lto_obj_append_data): ... and likewise.
(lto_elf_end_section): Likewise ...
(lto_obj_end_section): ... and likewise.
* lto.c (lto_file_read): Update references to the above.
(lto_wpa_write_files): Likewise.
(lto_read_all_file_options): Likewise.
(read_cgraph_and_symbols): Likewise.
* lto-lang.c (LANG_HOOKS_BEGIN_SECTION): Likewise.
(LANG_HOOKS_APPEND_DATA): Likewise.
(LANG_HOOKS_END_SECTION): Likewise.
* lto-elf.c (lto_elf_file_open): Rename from this ...
(lto_obj_file_open): ... to this, updating any references.
(lto_elf_file_close): Likewise ...
(lto_obj_file_close): ... and likewise.
(lto_elf_build_section_table): Likewise ...
(lto_obj_build_section_table): ... and likewise.
(lto_elf_begin_section): Likewise ...
(lto_obj_begin_section): ... and likewise.
(lto_elf_append_data): Likewise ...
(lto_obj_append_data): ... and likewise.
(lto_elf_end_section): Likewise ...
(lto_obj_end_section): ... and likewise.
From-SVN: r158718
GCC Administrator [Mon, 26 Apr 2010 00:18:06 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r158717
Jonathan Wakely [Sun, 25 Apr 2010 22:41:49 +0000 (22:41 +0000)]
status_cxx200x.xml: Update Threads status.
2010-04-25 Jonathan Wakely <jwakely.gcc@gmail.com>
* doc/xml/manual/status_cxx200x.xml: Update Threads status.
* doc/html/manual/status.html: Regenerate.
From-SVN: r158713
H.J. Lu [Sun, 25 Apr 2010 21:58:00 +0000 (14:58 -0700)]
Reformat.
From-SVN: r158712
Joseph Myers [Sun, 25 Apr 2010 21:54:22 +0000 (22:54 +0100)]
c-common.c (flag_isoc1x): New.
gcc:
* c-common.c (flag_isoc1x): New.
(flag_isoc99): Update comment.
* c-common.h (flag_isoc1x): New.
(flag_isoc99): Update comment.
* c-cppbuiltin.c (builtin_define_float_constants): Also define
__<type>_DECIMAL_DIG__.
* c-opts.c (set_std_c1x): New.
(c_common_handle_option): Handle -std=c1x and -std=gnu1x.
(set_std_c89, set_std_c99): Also set flag_isoc1x to 0.
* c.opt (-std=c1x, -std=gnu1x): New options.
* doc/cpp.texi: Mention -std=c1x.
* doc/cppopts.texi (-std=c1x, -std=gnu1x): Document.
* doc/extend.texi: Mention -std=c1x and -std=gnu1x.
* doc/invoke.texi (-std=c1x, -std=gnu1x): Document.
* doc/standards.texi: Mention C1X.
* ginclude/float.h (FLT_DECIMAL_DIG, DBL_DECIMAL_DIG,
LDBL_DECIMAL_DIG, FLT_HAS_SUBNORM, DBL_HAS_SUBNORM,
LDBL_HAS_SUBNORM, FLT_TRUE_MIN, DBL_TRUE_MIN, LDBL_TRUE_MIN):
Define for C1X.
gcc/testsuite:
* gcc.dg/c90-float-1.c: Also test that C1X macros are not defined.
* gcc.dg/c99-float-1.c: Also test that C1X macros are not defined.
* gcc.dg/c1x-float-1.c: New test.
libcpp:
* include/cpplib.h (enum c_lang): Add CLK_GNUC1X and CLK_STDC1X.
* init.c (lang_defaults): Add entries for new language variants.
(cpp_init_builtins): Define __STDC_VERSION__ to 201000L for C1X
variants.
From-SVN: r158711
H.J. Lu [Sun, 25 Apr 2010 21:48:55 +0000 (21:48 +0000)]
Scan "lea\[lq\]?\[ \t\]" instead of "lea\[ \t\]".
2010-04-25 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/pr43766.c: Scan "lea\[lq\]?\[ \t\]" instead
of "lea\[ \t\]".
From-SVN: r158710
Steven G. Kargl [Sun, 25 Apr 2010 21:45:21 +0000 (21:45 +0000)]
default_format_denormal_2.f90: Remove XFAIL for FreeBSD.
2010-04-25 Steven G. Kargl <kargl@gcc.gnu.org>
* gfortran.dg/default_format_denormal_2.f90: Remove XFAIL for FreeBSD.
* gfortran.dg/default_format_denormal_1.f90: ditto
* gfortran.dg/default_format_2.f90: ditto
From-SVN: r158709
Steven G. Kargl [Sun, 25 Apr 2010 21:29:37 +0000 (21:29 +0000)]
pr43505.f90: Clean up .mod file.
2010-04-25 Steven G. Kargl <kargl@gcc.gnu.org>
*gfortran.dg/pr43505.f90: Clean up .mod file.
*gfortran.dg/host_assoc_blockdata_1.f90
*gfortran.dg/pr41347.f90
*gfortran.dg/internal_pack_4.f90
*gfortran.dg/proc_decl_23.f90
*gfortran.dg/recursive_check_3.f90
*gfortran.dg/intent_out_3.f90
*gfortran.dg/assignment_2.f90
*gfortran.dg/pr41928.f90
*gfortran.dg/pr42166.f90
*gfortran.dg/private_type_12.f90
*gfortran.dg/graphite/pr42185.f90
*gfortran.dg/graphite/pr42186.f90
*gfortran.dg/graphite/pr40982.f90
*gfortran.dg/graphite/id-2.f90
*gfortran.dg/graphite/id-4.f90
*gfortran.dg/graphite/pr42050.f90
*gfortran.dg/graphite/id-18.f90
*gfortran.dg/graphite/pr42393-1.f90
*gfortran.dg/graphite/pr41924.f90
*gfortran.dg/graphite/pr42393.f90
*gfortran.dg/graphite/pr37980.f90
*gfortran.dg/graphite/pr38953.f90
*gfortran.dg/graphite/pr42180.f90
*gfortran.dg/graphite/pr42181.f90
*gfortran.dg/where_operator_assign_4.f90
*gfortran.dg/select_type_4.f90
*gfortran.dg/redefined_intrinsic_assignment.f90
*gfortran.dg/host_assoc_blockdata_2.f90
*gfortran.dg/lto/pr40725_0.f03
*gfortran.dg/elemental_args_check_2.f90
*gfortran.dg/whole_file_11.f90
*gfortran.dg/private_type_11.f90
*gfortran.dg/vect/vect-gems.f90
*gfortran.dg/vect/fast-math-real8-pr40801.f90
From-SVN: r158708
H.J. Lu [Sun, 25 Apr 2010 16:04:22 +0000 (16:04 +0000)]
Scan "lea\[ \t\]" instead of "lea".
2010-04-25 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/pr43766.c: Scan "lea\[ \t\]" instead of "lea".
From-SVN: r158706