1. 17 May, 2010 8 commits
  2. 16 May, 2010 19 commits
    • cgraph.c (dump_cgraph_node): Dump versionable flag. · ccbbf8a2
      	* cgraph.c (dump_cgraph_node): Dump versionable flag.
      	* cgraph.h (cgraph_local_info): Add versionable flag.
      	* ipa-cp.c (ipcp_analyze_node): Set versionable flag.
      	(ipcp_versionable_function_p): Use it.
      	* lto-cgraph.c (lto_output_node, input_overwrite_node): Stream
      	versionable flag.
      
      From-SVN: r159467
      Jan Hubicka committed
    • cgraph.c (cgraph_clone_node): Take decl argument and insert clone into hash when… · 91fbf0c7
      cgraph.c (cgraph_clone_node): Take decl argument and insert clone into hash when it is different from orig.
      
      	* cgraph.c (cgraph_clone_node): Take decl argument and insert
      	clone into hash when it is different from orig.
      	(cgraph_create_virtual_clone): Update use of cgraph_clone_node.
      	* cgraph.h (cgraph_clone_node): Update prototype.
      	* lto-cgrpah.c (lto_cgraph_encoder_new): Create body map.
      	(lto_cgraph_encoder_delete): Delete body map.
      	(lto_cgraph_encoder_size): Move to header.
      	(lto_cgraph_encoder_encode_body_p, lto_set_cgraph_encoder_encode_body): New.
      	(lto_output_node): Do not take written_decls argument; output clone_of
      	pointer.
      	(add_node_to): Add include_body_argument; call
      	lto_set_cgraph_encoder_encode_body on master of the clone.
      	(add_references): Update use of add_node_to.
      	(compute_ltrans_boundary): Likewise.
      	(output_cgraph): Do not create written_decls bitmap.
      	(input_node): Take nodes argument; stream in clone_of correctly.
      	(input_cgraph_1): Update use of input_node.
      	* lto-streamer-out.c (lto_output): Use encoder info to decide
      	what bodies to output.
      	* ipa-inline.c (cgraph_clone_inlined_nodes,
      	cgraph_decide_recursive_inlining): Update call of cgraph_clone_node.
      	* lto-streamer.h (lto_cgraph_encoder_d): Add body.
      	(lto_cgraph_encoder_size): Define here.
      	(lto_cgraph_encoder_encode_body_p, lto_varpool_encoder_encode_body_p):
      	Declare.
      
      From-SVN: r159466
      Jan Hubicka committed
    • re PR fortran/35779 (error pointer wrong in PARAMETER) · cdc6637d
      gcc/fortran/:
      2010-05-16  Daniel Franke  <franke.daniel@gmail.com>
      
              PR fortran/35779
      	* array.c (match_array_list): Revert functional change of 2010-05-13.
      
      gcc/fortran/:
      2010-05-16  Daniel Franke  <franke.daniel@gmail.com>
      
              PR fortran/35779
      	* gfortran.dg/initialization_25.f90: Commented testcase.
      	* gfortran.dg/initialization_26.f90: New.
      
      From-SVN: r159465
      Daniel Franke committed
    • invoke.texi (-fipa-struct-reorg): Do not mention -fipa-type-escape. · 6b87d1b4
      2010-05-16  Richard Guenther  <rguenther@suse.de>
      
      	* doc/invoke.texi (-fipa-struct-reorg): Do not mention
      	-fipa-type-escape.
      	* ipa-type-escape.c (gate_type_escape_vars): Run when
      	-fipa-struct-reorg runs.
      	* opts.c (decode_options): Do not unset flag_ipa_type_escape.
      	* common.opt (fipa-type-escape): Remove.
      
      	* gcc.dg/pr43317.c: Do not pass -fipa-type-escape.
      	* gcc.dg/pr43084.c: Likewise.
      	* gcc.dg/pr42250.c: Pass -fipa-struct-reorg instead of
      	-fipa-type-escape.
      	* gcc.dg/struct/wo_prof_escape_arg_to_local.c: Do not pass
      	-fipa-type-escape.
      	* gcc.dg/struct/struct-reorg.exp: Likewise.
      	* gcc.dg/struct/wo_prof_empty_str.c: Likewise.
      	* gcc.dg/struct/wo_prof_escape_return.c: Likewise.
      
      From-SVN: r159464
      Richard Guenther committed
    • opts.c (handle_option): Call into LTO streamer only if ENABLE_LTO. · 203a92e3
      	* opts.c (handle_option): Call into LTO streamer only if ENABLE_LTO.
      	(decode_options): Likewise.
      	* Makefile.in (opts.o): Add dependency on LTO_STREAMER_H.
      
      From-SVN: r159463
      Eric Botcazou committed
    • trans-decl.c (module_htab_decls_hash): Revert last change. · afdda4b4
      2010-05-16  Richard Guenther  <rguenther@suse.de>
      
      	* trans-decl.c (module_htab_decls_hash): Revert last change.
      
      From-SVN: r159462
      Richard Guenther committed
    • ipa.c (function_and_variable_visibility): Also bring local all aliases. · e419f710
      
      	* ipa.c (function_and_variable_visibility): Also bring local all
      	aliases.
      
      From-SVN: r159461
      Jan Hubicka committed
    • alias.c (nonoverlapping_memrefs_p): Remove use of IPA type-escape information. · 2e0c984c
      2010-05-16  Richard Guenther  <rguenther@suse.de>
      
      	* alias.c (nonoverlapping_memrefs_p): Remove use of
      	IPA type-escape information.
      
      From-SVN: r159460
      Richard Guenther committed
    • c-common.c (c_common_reswords): Add _Static_assert for C. · 32912286
      	* c-common.c (c_common_reswords): Add _Static_assert for C.
      	* c-parser.c (c_token_starts_declaration,
      	c_parser_next_token_starts_declaration,
      	c_parser_static_assert_declaration_no_semi,
      	c_parser_static_assert_declaration): New.
      	(c_parser_declaration_or_fndef): Add parameter static_assert_ok.
      	Handle static assertions if static_assert_ok.
      	(c_parser_external_declaration, c_parser_declaration_or_fndef,
      	c_parser_compound_statement_nostart, c_parser_label,
      	c_parser_for_statement, c_parser_objc_methodprotolist,
      	c_parser_omp_for_loop): All callers of
      	c_parser_declaration_or_fndef changed.
      	(c_parser_struct_declaration): Handle static assertions.
      	(c_parser_compound_statement_nostart): Use
      	c_parser_next_token_starts_declaration and
      	c_token_starts_declaration to detect start of declarations.
      	(c_parser_label, c_parser_for_statement, c_parser_omp_for_loop):
      	Likewise.
      
      testsuite:
      	* gcc.dg/c1x-static-assert-1.c, gcc.dg/c1x-static-assert-2.c,
      	gcc.dg/c1x-static-assert-3.c, gcc.dg/c1x-static-assert-4.c,
      	gcc.dg/c1x-static-assert-5.c, gcc.dg/c1x-static-assert-6.c,
      	gcc.dg/c90-static-assert-1.c, gcc.dg/c99-static-assert-1.c: New
      	tests.
      
      From-SVN: r159459
      Joseph Myers committed
    • mmix.h (FUNCTION_VALUE, [...]): Remove macros. · a3ca07e3
      	* config/mmix/mmix.h (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE,
      	LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
      	* config/mmix/mmix.c (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
      	TARGET_FUNCTION_VALUE_REGNO_P): Define.
      	(mmix_function_outgoing_value): Rename to...
      	(mmix_function_value): ...this. Make static. Add 'outgoing' argument.
      	(mmix_function_value_regno_p): Make static.
      	(mmix_libcall_value): New function.
      	* config/mmix/mmix-protos.h (mmix_function_outgoing_value,
      	mmix_function_value_regno_p): Remove declaration.
      
      From-SVN: r159458
      Anatoly Sokolov committed
    • tree.c (build_common_builtin_nodes): Always clear TREE_NOTHROW on… · 29d17485
      tree.c (build_common_builtin_nodes): Always clear TREE_NOTHROW on BUILT_IN_ALLOCA if stack checking is enabled.
      
      	* tree.c (build_common_builtin_nodes): Always clear TREE_NOTHROW on
      	BUILT_IN_ALLOCA if stack checking is enabled.
      
      From-SVN: r159457
      Eric Botcazou committed
    • var-tracking.c (vars_copy_1): Inline ... · a6590c31
      2010-05-16  Richard Guenther  <rguenther@suse.de>
      
      	* var-tracking.c (vars_copy_1): Inline ...
      	(vars_copy): ... here.  Use FOR_EACH_HTAB_ELEMENT.
      	(variable_union): Use FOR_EACH_HTAB_ELEMENT.  Merge asserts.
      	(variable_merge_over_cur): Adjust.  Merge asserts.
      	(variable_merge_over_src): Likewise.
      	(dataflow_set_merge): Use FOR_EACH_HTAB_ELEMENT.
      	(variable_post_merge_new_vals): Merge asserts.
      	(variable_post_merge_perm_vals): Likewise.
      	(find_mem_expr_in_1pdv): Likewise.
      	(dataflow_set_different_value): Remove.
      	(onepart_variable_different_p): Merge asserts.
      	(variable_different_p): Likewise.
      	(dataflow_set_different_1): Inline ...
      	(dataflow_set_different): ... here.  Use FOR_EACH_HTAB_ELEMENT.
      	(emit_notes_for_differences_1): Merge asserts.
      
      From-SVN: r159456
      Richard Guenther committed
    • lto-symtab.c (lto_symtab_entry_hash): Use IDENTIFIER_HASH_VALUE. · 6456e26e
      2010-05-16  Richard Guenther  <rguenther@suse.de>
      
      	* lto-symtab.c (lto_symtab_entry_hash): Use IDENTIFIER_HASH_VALUE.
      	* optabs.c (libfunc_decl_hash): Likewise.
      	* varasm.c (emutls_decl): Likewise.
      
      	fortran/
      	* trans-decl.c (module_htab_decls_hash): Use IDENTIFIER_HASH_VALUE.
      
      From-SVN: r159455
      Richard Guenther committed
    • misc.c (gnat_handle_option): Remove special logic for Wuninitialized without -O. · fa36ce9c
      2010-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      ada/
      	* gcc-interface/misc.c (gnat_handle_option): Remove special logic
      	for Wuninitialized without -O.
      fortran/
      	* options.c (set_Wall): Remove special logic for Wuninitialized
      	without -O.
      
      From-SVN: r159454
      Manuel López-Ibáñez committed
    • pass46-frag.c (dg-options): Remove -Wall. · 491fc0e1
      	* testsuite/libmudflap.c/pass46-frag.c (dg-options): Remove -Wall.
      
      From-SVN: r159453
      Uros Bizjak committed
    • gigi.h (enum standard_datatypes): Add new value ADT_exception_data_name_id. · 871fda0a
      	* gcc-interface/gigi.h (enum standard_datatypes): Add new value
      	ADT_exception_data_name_id.
      	(exception_data_name_id): New define.
      	* gcc-interface/trans.c (gigi): Initialize it.
      	* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Use the standard
      	exception type for standard exception definitions.  Do not make them
      	volatile.
      	<E_Record_Type>: Equate fields of types associated with an exception
      	definition to those of the standard exception type.
      
      From-SVN: r159452
      Eric Botcazou committed
    • c-decl.c: Don't include gimple.h. · 1d4c5fe9
      	* c-decl.c: Don't include gimple.h.
      	(merge_decls): Do not copy gimple_body.
      
      From-SVN: r159451
      Steven Bosscher committed
    • c.opt: Add -fnothrow-opt. · 9feb3d6a
      gcc:
      	* c.opt: Add -fnothrow-opt.
      gcc/cp:
      	* cp-tree.h (TYPE_NOEXCEPT_P): New macro.
      	* except.c (begin_eh_spec_block): Use MUST_NOT_THROW_EXPR if
      	TYPE_NOEXCEPT_P.
      	(finish_eh_spec_block): Adjust.
      
      From-SVN: r159450
      Jason Merrill committed
    • Daily bump. · e05e5c08
      From-SVN: r159449
      GCC Administrator committed
  3. 15 May, 2010 13 commits
    • re PR fortran/44154 (initialization problem with allocatable scalars) · 3a28464c
      2010-05-15  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/44154
      	PR fortran/42647
      	* trans-decl.c (gfc_trans_deferred_vars): Modify ordering of
      	if branches.
      
      
      2010-05-15  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/44154
      	PR fortran/42647
      	* gfortran.dg/allocatable_scalar_9.f90: New.
      
      From-SVN: r159445
      Janus Weil committed
    • ipa-prop.c (ipa_prop_read_section): Add sanity check that node is analyzed. · 9b3cf76a
      
      	* ipa-prop.c (ipa_prop_read_section): Add sanity check that node is analyzed.
      	* passes.c (ipa_write_summaries): Write all analyzed nodes.
      
      From-SVN: r159444
      Jan Hubicka committed
    • re PR c++/44148 (C++ genericization/gimplification may clobber templare arguments) · 1f910942
      	PR c++/44148
      	* pt.c (tsubst): Unshare template argument.
      
      	* g++.dg/torture/pr44148.C: New test.
      
      From-SVN: r159443
      Jakub Jelinek committed
    • vecir.h: New file with VEC primitives for tree, gimple, and rtl. · f4ce02c5
      gcc/ChangeLog
      	* vecir.h: New file with VEC primitives for tree, gimple, and rtl.
      	* Makefile.in: Add it.
      	Fix all other Makefile dependencies for changes below.
      	* tree.h: Include it instead of defining VEC primitives here.
      	* gimple.h: Likewise.
      	* rtl.h: Likewise.
      	* tree-inline.h: Inlclude vecir.h instead of gimple.h.
      	* except.h: Include vecir.h, break dependence on tree.h.
      
      	* gimplify.c (append_to_statement_list_1, append_to_statement_list):
      	Move from here...
      	* tree-iterator.c: ...to here.
      	* tree-iterator.h: Fix file introduction comment.  Add extern markers.
      
      	* c-lex.c: Include fixed-value.h instead of rtl.h.  Do not include
      	tm_p.h.
      	* c-cppbuiltin.c: Explain why debug.h and tm_p.h are included.
      	* c-objc-common.h: Do not include tm.h, rtl.h, insn-config.h,
      	integrate.h, function.h, toplev.h, tree-inline.h, ggc.h,
      	tree-mudflap.h, and target.h.
      	* c-semantics.c: Do not include except.h, ggc.h, rtl.h, timevar.h,
      	predict.h, tree-inline.h, gimple.h, and langhooks.h.
      	* c-decl.c: Do not include expr.h, ggc.h, libfuncs.h, except.h.
      	Add FIXME for why gimple.h is still included (should be unnecessary
      	since GCC 4.5 gimplification unit-at-a-time).
      	* c-typeck.c: Do not include rtl.h, tm_p.h, ggc.h, and gimple.h.
      	* c-pragma.c: Add FIXME for why function.h needs to be included just
      	for cfun, at front-end level.
      	Add note that REGISTER_TARGET_PRAGMAS should probably be a target hook.
      	Do not include ggc.h, but include vecprim.h for VEC(char).
      	* c-opts.c: Do not include tm.h, tree-inline.h, and tm_p.h.
      	Explain why target.h is included.
      	* c-omp.h: Do not include tm.h, function.h, and bitmap.h.
      	Explain why gimple.h is included.
      	* c-ppoutput.c: Do not include tm.h.
      	* c-common.c: Do not include gimple.h.  Explain why expr.h is included.
      	* c-parses.c: Explain why rtl.h is included, and that this (and only
      	this) is also why tm.h must be included.
      	Do not include except.h.
      	* c-lang.c: Do not include ggc.h.
      
      cp/ChangeLog
      	* decl.c: Include tree-iterator.h, as fixup for tree-inline.h changes.
      	* Make-lang.in: Fix dependencies accordingly.
      
      From-SVN: r159442
      Steven Bosscher committed
    • targhooks.c (GO_IF_MODE_DEPENDENT_ADDRESS): Use CONST_CAST_RTX. · 12201e48
      	* targhooks.c (GO_IF_MODE_DEPENDENT_ADDRESS): Use CONST_CAST_RTX.
      
      From-SVN: r159441
      Uros Bizjak committed
    • mfdg.exp (additional_prunes): New global. · eb5b0f64
      	* testsuite/lib/mfdg.exp (additional_prunes): New global.
      	(dg-test): Clear additional_prunes before test is run.
      	(dg-prune-output): New procedure.
      	* testsuite/lib/libmudflap.exp (libmudflap-dg-test): Do not call
      	prune_gcc_output.
      	(libmudflap-dg-prune): New procedure.
      	* testsuite/libmudflap.c++/pass57-frag.cxx (dg-prune-output):
      	New dg directive.
      
      From-SVN: r159440
      Uros Bizjak committed
    • c-decl.c (grokfield): Allow typedefs for anonymous structs and unions by default if... · 4bdd0a60
      	* c-decl.c (grokfield): Allow typedefs for anonymous structs and
      	unions by default if those structs and unions have no tags.  Do
      	not condition anonymous struct and unions handling on flag_iso.
      	Allow anonymous structs and unions for C1X.
      	(finish_struct): Do not diagnose lack of named fields when
      	anonymous structs and unions present for C1X.  Accept flexible
      	array members in structure with anonymous structs or unions but no
      	directly named fields.
      	* doc/extend.texi (Unnamed Fields): Update.
      
      testsuite:
      	* gcc.dg/c1x-anon-struct-1.c, gcc.dg/c1x-anon-struct-2.c,
      	gcc.dg/c90-anon-struct-1.c, gcc.dg/c99-anon-struct-1.c: New tests.
      	* gcc.dg/20080820.c, gcc.dg/anon-struct-1.c: Update expected
      	diagnostics and type sizes.
      
      From-SVN: r159439
      Joseph Myers committed
    • gimple.h (compare_field_offset): Rename into... · d025732d
      	* gimple.h (compare_field_offset): Rename into...
      	(gimple_compare_field_offset): ...this.
      	* gimple.c (compare_field_offset): Rename into...
      	(gimple_compare_field_offset): ...this.  Compare the full access if
      	the offset is self-referential.
      	(gimple_types_compatible_p): Adjust for above renaming.
      	* lto-streamer-in.c (input_gimple_stmt): Likewise.  Also compare the
      	DECL_NONADDRESSABLE_P flag of fields before merging them.
      
      From-SVN: r159438
      Eric Botcazou committed
    • tree.h (ctor_to_list): Delete. · b75bdd29
      	* tree.h (ctor_to_list): Delete.
      	* tree.c (ctor_to_list): Delete.
      
      From-SVN: r159437
      Nathan Froyd committed
    • ipareference_1.c: Rename to ... · ade41c1d
      
      	* gcc.dg/lto/ipareference_1.c: Rename to ...
      	* gcc.dg/lto/ipareference_0.c: ... this one.
      	* gcc.dg/lto/ipareference_2.c: Rename to ...
      	* gcc.dg/lto/ipareference_1.c: ... this one.
      
      From-SVN: r159436
      Jan Hubicka committed
    • ipa-reference.c: Include toplev.h · f3380641
      	* ipa-reference.c: Include toplev.h
      	(is_proper_for_analysis): Only add to all_module_statics
      	if it is allocated.
      	(write_node_summary_p, stream_out_bitmap,
      	ipa_reference_write_optimization_summary,
      	ipa_reference_read_optimization_summary): New.
      	(struct ipa_opt_pass_d pass_ipa_reference): Add
      	optimization summary streaming.
      	* lto-cgraph.c (referenced_from_this_partition_p, 
      	reachable_from_this_partition_p): New functions.
      	* tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
      	call_may_clobber_ref_p_1): Ask ipa-reference even for public vars.
      	* opts.c (decode_options): Enable ipa_reference.
      	* Makefile.in (ipa-reference.o): Add toplev.h dependency.
      	* lto-streamer.h (referenced_from_this_partition_p,
      	reachable_from_this_partition_p): Declare.
      
      	* gcc.dg/lto/ipareference_1.c: New file.
      	* gcc.dg/lto/ipareference_2.c: New file.
      
      From-SVN: r159435
      Jan Hubicka committed
    • re PR other/44038 (ICE: verify_stmts failed) · 9d0baae1
      2010-05-15  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/44038
      	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Avoid
      	taking the address of a V_C_E of a constant.
      
      	* gcc.c-torture/compile/pr44038.c: New testcase.
      
      From-SVN: r159434
      Richard Guenther committed
    • Add -std=c99 to avx-cmpsd-1.c and avx-cmpss-1.c. · 75d2d581
      2010-05-15  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* gcc.target/i386/avx-cmpsd-1.c: Add -std=c99.
      	* gcc.target/i386/avx-cmpss-1.c: Likewise.
      
      From-SVN: r159432
      H.J. Lu committed