Commit Graph

100017 Commits

Author SHA1 Message Date
Jan Hubicka
199f1dc47f ipa-cp.c (ipcp_versionable_function_p): Walk cgraph edges instead of function body...
* ipa-cp.c (ipcp_versionable_function_p): Walk cgraph edges instead of
	function body; do not check stdarg field of struct function.

From-SVN: r159472
2010-05-17 07:01:26 +00:00
GCC Administrator
c4b4455fa9 Daily bump.
From-SVN: r159471
2010-05-17 00:16:57 +00:00
Jan Hubicka
ccbbf8a2db cgraph.c (dump_cgraph_node): Dump versionable flag.
* 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
2010-05-16 22:24:26 +00:00
Jan Hubicka
91fbf0c7c6 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
2010-05-16 21:49:36 +00:00
Daniel Franke
cdc6637d7c re PR fortran/35779 (error pointer wrong in PARAMETER)
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
2010-05-16 16:01:06 -04:00
Richard Guenther
6b87d1b4ca invoke.texi (-fipa-struct-reorg): Do not mention -fipa-type-escape.
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
2010-05-16 19:56:44 +00:00
Eric Botcazou
203a92e384 opts.c (handle_option): Call into LTO streamer only if ENABLE_LTO.
* 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
2010-05-16 18:46:16 +00:00
Richard Guenther
afdda4b445 trans-decl.c (module_htab_decls_hash): Revert last change.
2010-05-16  Richard Guenther  <rguenther@suse.de>

	* trans-decl.c (module_htab_decls_hash): Revert last change.

From-SVN: r159462
2010-05-16 17:27:09 +00:00
Jan Hubicka
e419f710ea ipa.c (function_and_variable_visibility): Also bring local all aliases.
* ipa.c (function_and_variable_visibility): Also bring local all
	aliases.

From-SVN: r159461
2010-05-16 17:26:55 +00:00
Richard Guenther
2e0c984cca alias.c (nonoverlapping_memrefs_p): Remove use of IPA type-escape information.
2010-05-16  Richard Guenther  <rguenther@suse.de>

	* alias.c (nonoverlapping_memrefs_p): Remove use of
	IPA type-escape information.

From-SVN: r159460
2010-05-16 17:15:30 +00:00
Joseph Myers
3291228620 c-common.c (c_common_reswords): Add _Static_assert for C.
* 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
2010-05-16 17:55:16 +01:00
Anatoly Sokolov
a3ca07e3be mmix.h (FUNCTION_VALUE, [...]): Remove macros.
* 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
2010-05-16 20:51:40 +04:00
Eric Botcazou
29d1748506 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
2010-05-16 15:20:47 +00:00
Richard Guenther
a6590c31ac var-tracking.c (vars_copy_1): Inline ...
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
2010-05-16 14:58:34 +00:00
Richard Guenther
6456e26e2c lto-symtab.c (lto_symtab_entry_hash): Use IDENTIFIER_HASH_VALUE.
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
2010-05-16 14:47:38 +00:00
Manuel López-Ibáñez
fa36ce9c63 misc.c (gnat_handle_option): Remove special logic for Wuninitialized without -O.
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
2010-05-16 10:30:39 +00:00
Uros Bizjak
491fc0e191 pass46-frag.c (dg-options): Remove -Wall.
* testsuite/libmudflap.c/pass46-frag.c (dg-options): Remove -Wall.

From-SVN: r159453
2010-05-16 12:03:01 +02:00
Eric Botcazou
871fda0ab0 gigi.h (enum standard_datatypes): Add new value ADT_exception_data_name_id.
* 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
2010-05-16 09:11:39 +00:00
Steven Bosscher
1d4c5fe99b c-decl.c: Don't include gimple.h.
* c-decl.c: Don't include gimple.h.
	(merge_decls): Do not copy gimple_body.

From-SVN: r159451
2010-05-16 07:12:46 +00:00
Jason Merrill
9feb3d6aca c.opt: Add -fnothrow-opt.
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
2010-05-15 22:27:02 -04:00
GCC Administrator
e05e5c083b Daily bump.
From-SVN: r159449
2010-05-16 00:16:54 +00:00
Janus Weil
3a28464c5c re PR fortran/44154 (initialization problem with allocatable scalars)
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
2010-05-16 00:03:09 +02:00
Jan Hubicka
9b3cf76aa1 ipa-prop.c (ipa_prop_read_section): Add sanity check that node is analyzed.
* 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
2010-05-15 20:48:58 +00:00
Jakub Jelinek
1f9109426d re PR c++/44148 (C++ genericization/gimplification may clobber templare arguments)
PR c++/44148
	* pt.c (tsubst): Unshare template argument.

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

From-SVN: r159443
2010-05-15 22:23:59 +02:00
Steven Bosscher
f4ce02c5bf vecir.h: New file with VEC primitives for tree, gimple, and rtl.
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
2010-05-15 20:02:11 +00:00
Uros Bizjak
12201e4873 targhooks.c (GO_IF_MODE_DEPENDENT_ADDRESS): Use CONST_CAST_RTX.
* targhooks.c (GO_IF_MODE_DEPENDENT_ADDRESS): Use CONST_CAST_RTX.

From-SVN: r159441
2010-05-15 21:58:30 +02:00
Uros Bizjak
eb5b0f64d2 mfdg.exp (additional_prunes): New global.
* 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
2010-05-15 21:19:48 +02:00
Joseph Myers
4bdd0a60b2 c-decl.c (grokfield): Allow typedefs for anonymous structs and unions by default if...
* 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
2010-05-15 20:07:01 +01:00
Eric Botcazou
d025732d19 gimple.h (compare_field_offset): Rename into...
* 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
2010-05-15 19:05:06 +00:00
Nathan Froyd
b75bdd292f tree.h (ctor_to_list): Delete.
* tree.h (ctor_to_list): Delete.
	* tree.c (ctor_to_list): Delete.

From-SVN: r159437
2010-05-15 18:41:11 +00:00
Jan Hubicka
ade41c1df2 ipareference_1.c: Rename to ...
* 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
2010-05-15 17:06:48 +00:00
Jan Hubicka
f338064159 ipa-reference.c: Include toplev.h
* 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
2010-05-15 16:57:35 +00:00
Richard Guenther
9d0baae10e re PR other/44038 (ICE: verify_stmts failed)
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
2010-05-15 15:06:47 +00:00
H.J. Lu
75d2d58156 Add -std=c99 to avx-cmpsd-1.c and avx-cmpss-1.c.
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
2010-05-15 06:54:44 -07:00
Janus Weil
f8dde8af6f re PR fortran/43207 ([OOP] invalid (pointer) assignment to and from abstract non-polymorphic expressions)
2010-05-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/43207
	PR fortran/43969
	* gfortran.h (gfc_class_null_initializer): New prototype.
	* expr.c (gfc_class_null_initializer): New function to build a NULL
	initializer for CLASS pointers.
	* symbol.c (gfc_build_class_symbol): Modify internal naming of class
	containers. Remove default NULL initialization of $data component.
	* trans.c (gfc_allocate_array_with_status): Fix wording of an error 
	message.
	* trans-expr.c (gfc_conv_initializer,gfc_trans_subcomponent_assign):
	Use new function 'gfc_class_null_initializer'.
	* trans-intrinsic.c (gfc_conv_allocated): Handle allocatable scalar
	class variables.


2010-05-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/43207
	PR fortran/43969
	* gfortran.dg/class_18.f03: New.
	* gfortran.dg/class_19.f03: New.

From-SVN: r159431
2010-05-15 15:52:33 +02:00
Jan Hubicka
46c3001944 tree.h (memory_identifier_string): Remove.
* tree.h (memory_identifier_string): Remove.
	* ipa-reference.c: Update comment; do not include gt-ipa-reference.h
	(ipa_reference_global_vars_info_d): Remove statics_not_read and
	statics_not_written.
	(ipa_reference_optimization_summary_d): New structure.
	(ipa_reference_optimization_summary_t): New type and vector.
	(ipa_reference_vars_info_d): Embedd structures instead of using
	pointers.
	(reference_vars_to_consider): Remove out of GGC space.
	(module_statics_escape): Remove.
	(global_info_obstack): Rename to ...
	(optimization_summary_obstack): ... this one.
	(initialization_status_t): Remove.
	(memory_identifier_string): Remove.
	(get_reference_vars_info): Fix indenting.
	(set_reference_vars_info): Likewise.
	(get_reference_optimization_summary): New.
	(set_reference_optimization_summary): New.
	(get_global_reference_vars_info): Remove.
	(ipa_reference_get_read_global): Remove.
	(ipa_reference_get_written_global): Remove.
	(ipa_reference_get_not_read_global): Update.
	(ipa_reference_get_not_written_global): Update.
	(is_proper_for_analysis): Outlaw addressable.
	(propagate_bits): Update for new datastructures.
	(analyze_variable): Remove.
	(init_function_info): Update for new datastructures.
	(clean_function_local_data): Remove.
	(clean_function): Remove.
	(copy_global_bitmap): Use optimizations_summary_obstack.
	(duplicate_node_data): Duplicate optimization summary only.
	(remove_node_data): Remove optimization summary only.
	(generate_summary): Do not analyze variables; do not compute
	module_statics_escape; do not prune solutions by it.
	(read_write_all_from_decl): Fix typos in comments.
	(propagate): Doscover readonly and nonaddressable first;
	update for new datastructures; share global bitmaps.
	* ipa-reference.h (ipa_reference_get_read_global,
	ipa_reference_get_written_global): Remove.
	* ipa-pure-const.c (check_stmt): Do not use memory_identifier_string.
	* Makefile.in: Remove ipa-refereference from GT files.

From-SVN: r159430
2010-05-15 09:46:55 +00:00
Jakub Jelinek
22bf7d174a re PR debug/44112 (Revision 159354 causes Fortran test failures)
PR debug/44112
	* dwarf2out.c (resolve_one_addr): Check TREE_ASM_WRITTEN
	for all SYMBOL_REF_DECLs.

	* gcc.dg/debug/dwarf2/const-1.c: Remove.
	* g++.dg/debug/dwarf2/const1.C: Remove.

From-SVN: r159429
2010-05-15 08:01:20 +02:00
Jason Merrill
b33a0480d7 C++ DR 475
C++ DR 475
	* except.c (build_throw): Simplify, adjust for DR 475.

From-SVN: r159428
2010-05-14 22:22:37 -04:00
Joseph Myers
8efab4c82c * fi.po: New.
From-SVN: r159426
2010-05-15 02:06:29 +01:00
GCC Administrator
8123be7aae Daily bump.
From-SVN: r159425
2010-05-15 00:17:02 +00:00
Jan Hubicka
4a444e5816 cgraph.h (ipa_discover_readonly_nonaddressable_vars): Declare.
* cgraph.h (ipa_discover_readonly_nonaddressable_vars): Declare.
	(varpool_all_refs_explicit_p): New inline function.
	* ipa-reference.c: Update comment.
	(module_statics_written): Remove.
	(get_static_decl): Remove.
	(ipa_init): Do not initialize module_statics_written.
	(analyze_function): Likewise.
	(generate_summary): Likewise; do not compute module_statics_readonly
	and do not update variable flags.
	(propagate): Call ipa_discover_readonly_nonaddressable_vars.
	* ipa.c: Inlucde flags.h
	(cgraph_local_node_p): New.
	(cgraph_remove_unreachable_nodes): Return early when not optimizing;
	promote functions to local.
	(ipa_discover_readonly_nonaddressable_vars): New function.
	(function_and_variable_visibility): Use cgraph_local_node_p.
	* varpool.c (varpool_finalize_decl): Set force_output for
	DECL_PRESERVE_P vars.

From-SVN: r159421
2010-05-14 23:39:39 +00:00
Steven G. Kargl
c13af44bcc re PR fortran/44135 (Negative array bounds lead to spurious warning)
2010-05-14  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/44135
	* gfortran.dg/actual_array_interface_2.f90: New test.

2010-05-14  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/44135
	* fortran/interface.c (get_sym_storage_size): Use signed instead of
	unsigned mpz_get_?i routines.

From-SVN: r159415
2010-05-14 21:02:26 +00:00
Nathan Froyd
c4e64f39d9 re PR middle-end/44103 (New Java test failures)
PR 44103
	* java-tree.h (START_RECORD_CONSTRUCTOR): Change first argument to a
	vector.  Move call to build_constructor...
	(FINISH_RECORD_CONSTRUCTOR): ...here.  Add necessary arguments.  Clear
	TREE_CONSTANT on the constructor.
	(PUSH_SUPER_VALUE): Change first argument to a vector.
	(PUSH_FIELD_VALUE): Likewise.
	* resource.c (compile_resource_data): Update calls to above macros.
	* constants.c (build_constants_constructor): Likewise.
	* class.c (build_utf8_ref): Likewise.
	(make_field_value): Likewise.
	(make_method_value): Likewise.
	(add_table_and_syms): New function.
	(make_class_data): Call it.  Update calls to above macros.
	(build_symbol_table_entry): New function.
	(build_symbol_entry): Call it.  Update calls to above macros.
	(emit_symbol_table): Likewise.
	(make_catch_class_record): Update calls to above macros.
	(build_assertion_table_entry): New function.
	(add_assertion_table_entry): Call it.
	(emit_assertion_table): Likewise.

From-SVN: r159414
2010-05-14 20:47:39 +00:00
Jan Hubicka
bc8ddfe635 * ipa.c (cgraph_remove_unreachable_nodes): Revert accidental commit.
From-SVN: r159413
2010-05-14 20:38:43 +00:00
Richard Guenther
4d2ab9e36b re PR tree-optimization/44119 (error: SSA name in freelist but still referenced)
2010-05-14  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44119
	* tree-ssa-pre.c (eliminate): Properly mark replacement of
	a PHI node necessary.

	* gcc.c-torture/compile/pr44119.c: New testcase.

From-SVN: r159412
2010-05-14 20:18:34 +00:00
Eric Botcazou
9e87b84227 * tree.h (TREE_ADDRESSABLE): Remove bogus usage for FIELD_DECL.
From-SVN: r159409
2010-05-14 19:27:14 +00:00
Jason Merrill
9bb1a81bb3 re PR c++/44127 (G++ emits unnecessary EH code)
PR c++/44127
gcc:
	* gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
	(gimple_call_set_nothrow): New.
	* gimple.c (gimple_build_call_from_tree): Call it.
	(gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
gcc/cp:
	* except.c (dtor_nothrow): Return nonzero for type with
	trivial destructor.

From-SVN: r159408
2010-05-14 14:55:22 -04:00
Jason Merrill
786f715dc6 re PR c++/44127 (G++ emits unnecessary EH code)
PR c++/44127
gcc:
	* gimplify.c (gimplify_seq_add_stmt): No longer static.
	* gimple.h: Declare it.
	* gimple.c (gimple_build_eh_filter): No ops.
gcc/cp:
	* cp-gimplify.c (gimplify_must_not_throw_expr): Use
	gimple_build_eh_must_not_throw.

From-SVN: r159407
2010-05-14 14:55:10 -04:00
Jan Hubicka
19fb0b860f ipa.c (enqueue_cgraph_node): Update comment; do not re-enqueue nodes already in queue.
* ipa.c (enqueue_cgraph_node): Update comment; do not re-enqueue
	nodes already in queue.
	(cgraph_remove_unreachable_nodes): Cleanup; fix problem with re-enqueueing
	node.

From-SVN: r159405
2010-05-14 18:34:30 +00:00
Jakub Jelinek
88c04a5de2 re PR debug/44136 (ICE in expand_debug_expr with -mno-sse)
PR debug/44136
	* cfgexpand.c (expand_debug_expr): If non-memory op0
	has BLKmode, return NULL.

	* gcc.dg/pr44136.c: New test.

From-SVN: r159400
2010-05-14 20:09:14 +02:00