Commit Graph

111119 Commits

Author SHA1 Message Date
Ramana Radhakrishnan 3598da8066 re PR target/50022 ("incorrect condition in IT block" when building mozilla code base for ARM)
2011-08-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

	PR target/50022
	* config/arm/arm.c (output_move_double): Add 2 parameters
	to count the number of insns emitted and whether to emit or not.
	Use the flag to decide when to emit and count number of instructions
	that will be emitted.
	Handle case where output_move_double might be called for calculating
	lengths with an invalid constant.
	(arm_count_output_move_double_insns): Define.
	* config/arm/arm-protos.h (arm_count_output_move_double_insns): Declare.
	(output_move_double): Adjust prototype.
	* config/arm/vfp.md ("*movdi_vfp"): Adjust call to
	output_move_double.
	("*movdi_vfp_cortexa8"): Likewise and add attribute
	for ce_count.
	* config/arm/arm.md ("*arm_movdi"): Adjust call to output_move_double.
	("*movdf_soft_insn"): Likewise.
	* config/arm/cirrus.md ("*cirrus_arm_movdi"): Likewise.
	("*cirrus_thumb2_movdi"): Likewise.
	("*thumb2_cirrus_movdf_hard_insn"): Likewise.
	("*cirrus_movdf_hard_insn"): Likewise.
	* config/arm/neon.md (*neon_mov<mode> VD): Likewise.
	* config/arm/iwmmxt.md ("*iwmmxt_arm_movdi"): Likewise.
	("mov<mode>_internal VMMX"): Likewise.
	* config/arm/fpa.md (*movdf_fpa, *thumb2_movdf_fpa): Likewise.

From-SVN: r177759
2011-08-15 11:57:33 +00:00
Hans-Peter Nilsson e7d4e45e2e vrp61.c: : Use -fdump-tree-vrp1-nouid instead of -fdump-tree-vrp1.
* gcc.dg/tree-ssa/vrp61.c: : Use -fdump-tree-vrp1-nouid instead of
	-fdump-tree-vrp1.

From-SVN: r177758
2011-08-15 10:07:25 +00:00
Benjamin Kosnik 86938b2c85 *: Image and image filename changes.
2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/xml/images/*: Image and image filename changes.

From-SVN: r177757
2011-08-15 00:54:18 +00:00
Benjamin Kosnik 154c4a088e make_graph_test_infos.xml: Edit.
2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/data/make_graph_test_infos.xml: Edit.
	* testsuite/data/make_graph_htmls.xml: Remove
	* scripts/make_graph.py: Edit, fix.
	* scripts/make_graphs.py: Remove.

	* doc/Makefile.am (doc-svg-performance): New.
	(doc-html-performance): Remove.
	* doc/Makefile.in: Regenerate.

	* doc/xml/manual/test_policy_data_structures.xml: Markup changes.
	* doc/xml/manual/policy_data_structures.xml: Same.
	* doc/xml/manual/locale.xml: Same.

	Testsuite renames.
	* performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
	Rename.
	* performance/ext/pb_ds/random_int_find_timing.cc: Same.
	* performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
	* performance/ext/pb_ds/multimap_text_find_timing.hpp
	* performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
	* performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
	* performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
	* performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
	* performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
	* performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
	* performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
	* performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
	* performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
	* performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
	* performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
	* performance/ext/pb_ds/text_find_timing.cc: Same.
	* performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
	* performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
	* performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
	* performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
	* performance/ext/pb_ds/tree_split_join_timing.cc: Same.
	* performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
	* performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
	* performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
	* performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
	Same.
	* performance/ext/pb_ds/multimap_text_insert_timing.hpp
	* performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
	* performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.

	* performance/ext/pb_ds/all_int_find.cc: To these new files...
	* performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
	* performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
	* performance/ext/pb_ds/all_text_find.cc: ...this.
	* performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
	* performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
	* performance/ext/pb_ds/multimap_text_find.hpp
	* performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
	* performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
	* performance/ext/pb_ds/multimap_text_insert.hpp
	* performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
	* performance/ext/pb_ds/multimap_text_insert_mem.hpp
	* performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
	* performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
	* performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
	* performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
	* performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
	* performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
	* performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
	* performance/ext/pb_ds/priority_queue_text_modify.hpp
	* performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
	* performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
	* performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
	* performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
	* performance/ext/pb_ds/tree_order_statistics.cc: ...this.
	* performance/ext/pb_ds/tree_split_join.cc: ...this.
	* performance/ext/pb_ds/tree_text_insert.cc: ...this.
	* performance/ext/pb_ds/tree_text_lor_find.cc: ...this.

	* doc/xml/images/*: Image and image filename changes.

From-SVN: r177756
2011-08-15 00:51:06 +00:00
GCC Administrator 675bc3526e Daily bump.
From-SVN: r177755
2011-08-15 00:18:30 +00:00
Uros Bizjak f4ab7b998e i386.c (ix86_expand_round_sse4): New function.
* config/i386/i386.c (ix86_expand_round_sse4): New function.
	* config/i386/i386-protos.h (ix86_expand_round_sse4): New prototype.
	* config/i386/i386.md (round<mode>2): Use ix86_expand_round_sse4
	for TARGET_ROUND.

	(rint<mode>2): Simplify TARGET_ROUND check.
	(floor<mode>2): Ditto.
	(ceil<mode>2): Ditto.
	(btrunc<mode>2): Ditto.

From-SVN: r177751
2011-08-14 22:02:32 +02:00
Steven G. Kargl 8533a1cae9 module.c (use_iso_fortran_env_module): Spell 'referrenced' correctly.
2011-08-14  Steven G. Kargl  <kargl@gcc.gnu.org>

	* module.c (use_iso_fortran_env_module):  Spell 'referrenced' correctly.

From-SVN: r177750
2011-08-14 18:00:51 +00:00
Anatoly Sokolov 12e502c615 mmix.c (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Redefine as mmix_preferred_output_reload_class.
* config/mmix/mmix.c (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Redefine
	as mmix_preferred_output_reload_class.

From-SVN: r177749
2011-08-14 21:16:42 +04:00
Yao Qi 0d557ff8f7 configure.ac (tic6x-*-*): Remove gdb from noconfigdirs.
* configure.ac (tic6x-*-*): Remove gdb from noconfigdirs.
	* configure: Regenerate.

From-SVN: r177746
2011-08-14 12:25:15 +00:00
Janus Weil bb9de0c4d0 re PR fortran/50073 (gfortran must not accept function name when result name is present)
2011-08-14  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/50073
	* decl.c (check_function_name): New function, separated off from
	'variable_decl' and slightly extended.
	(variable_decl,attr_decl1): Call it.


2011-08-14  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/50073
	* gfortran.dg/func_result_7.f90: New.

From-SVN: r177745
2011-08-14 11:37:25 +02:00
Georg-Johann Lay f371377833 re PR target/49903 ([avr] Redundant comparisons in binary-search switch/case expansion)
* PR target/49903
	* config/avr/avr.md (UNSPEC_IDENTITY): New c_enum.
	(branch_unspec): New insn.
	(branch): Beauty farm.
	* config/avr/avr.c (compare_condition): Use JUMP_P.  Test SET_SRC
	to be IF_THEN_ELSE.
	(avr_compare_pattern, avr_reorg_remove_redundant_compare):
	New static functions.
	(avr_reorg): Use them.  Use next_real_insn instead of NEXT_INSN.
	Use CONST_INT_P.  Beauty.

From-SVN: r177744
2011-08-14 09:10:13 +00:00
Jason Merrill fdf0337727 re PR c++/50075 ([C++0x] ICE related to parameter deduction and initializer_list)
PR c++/50075
	* name-lookup.c (local_bindings_p): New.
	* name-lookup.h: Declare it.
	* lex.c (unqualified_name_lookup_error): Use it.

From-SVN: r177743
2011-08-14 00:41:43 -04:00
GCC Administrator b23903f787 Daily bump.
From-SVN: r177741
2011-08-14 00:18:35 +00:00
Jason Merrill a11e05f440 re PR c++/50059 ([C++0x] Broken error message with __builtin_remquo & constexpr)
PR c++/50059
	* error.c (dump_expr): Handle MODIFY_EXPR properly.

From-SVN: r177735
2011-08-13 16:03:23 -04:00
Jason Merrill 515756b990 decl.c (grok_reference_init): Handle constexpr here.
* decl.c (grok_reference_init): Handle constexpr here.
	* call.c (initialize_reference): Not here.

From-SVN: r177734
2011-08-13 16:03:15 -04:00
David Li 8434c30579 Fix bug in vtable initialization
From-SVN: r177731
2011-08-13 05:13:57 +00:00
GCC Administrator b203901cda Daily bump.
From-SVN: r177728
2011-08-13 00:19:09 +00:00
Jason Merrill 98b3c04ea5 re PR c++/50034 (Overload selection failure within class template)
PR c++/50034
	* call.c (convert_arg_to_ellipsis): force_rvalue only in
	potentially evaluated context.

From-SVN: r177722
2011-08-12 17:27:52 -04:00
Richard Henderson 7b4ef66246 re PR rtl-optimization/49994 (ICE: in maybe_record_trace_start, at dwarf2cfi.c:2234 with -fsched2-use-superblocks)
PR rtl-opt/49994
        * sched-init.h (struct deps_desc): Add sched_before_next_jump.
        * sched-deps.c (init_deps): Clear it.
        (deps_analyze_insn): Consume it.
        (sched_analyze_insn): Fill it.

From-SVN: r177721
2011-08-12 14:00:00 -07:00
Richard Sandiford c789cb7756 Fix changelog
From-SVN: r177720
2011-08-12 20:28:18 +00:00
Paolo Bonzini 1563503deb re PR bootstrap/50047 (Revision 177670 failed to bootstrap)
2011-08-12  Paolo Bonzini  <bonzini@gnu.org>

	PR bootstrap/50047
	* Makefile.in (install-unwind_h): Create
	$(gcc_objdir)/include/unwind.h atomically.

From-SVN: r177706
2011-08-12 17:13:04 +00:00
Ramana Radhakrishnan 10c241af69 Fix PR target/48328 part 1
From-SVN: r177705
2011-08-12 16:58:09 +00:00
Diego Novillo 412288f1c0 data-streamer.h (streamer_write_zero): Rename from output_zero.
* data-streamer.h (streamer_write_zero): Rename from output_zero.
 	(streamer_write_uhwi): Rename from lto_output_uleb128.
 	(streamer_write_hwi): Rename from output_sleb128.
 	(streamer_write_string): Rename from lto_output_string.
 	(streamer_string_index): Rename from lto_string_index.
 	(streamer_write_string_with_length): Rename from
 	lto_output_string_with_length.
 	(streamer_write_uhwi_stream): Rename from lto_output_uleb128_stream.
 	(streamer_write_hwi_stream): Rename from lto_output_sleb128_stream.
 	(streamer_read_string): Rename from lto_input_string.
 	(streamer_read_indexed_string): Rename from input_string_internal.
 	(streamer_read_uhwi): Rename from lto_input_uleb128.
 	(streamer_read_hwi): Rename from lto_input_sleb128.
 	(streamer_write_hwi_in_range): Rename from lto_output_int_in_range.
 	(streamer_read_hwi_in_range): Rename from lto_input_int_in_range.
 	(streamer_write_enum): Rename from lto_output_enum.
 	(streamer_read_enum): Rename from lto_input_enum.
 	(streamer_write_record_start): Rename from output_record_start.
 	(streamer_read_record_start): Rename from input_record_start.
 	(streamer_write_bitpack): Rename from lto_output_bitpack.
 	(streamer_read_bitpack): Rename from lto_input_bitpack.
 	(streamer_write_char_stream): Rename from lto_output_1_stream.
 	(streamer_read_uchar): Rename from lto_input_1_unsigned.
 	* tree-streamer.h (streamer_cache_d): Rename from lto_streamer_cache_d.
 	(streamer_handle_as_builtin_p): Rename from lto_stream_as_builtin_p.
 	(streamer_read_string_cst): Rename from input_string_cst.
 	(streamer_read_chain): Rename from lto_input_chain.
 	(streamer_alloc_tree): Rename from lto_materialize_tree.
 	(streamer_read_tree_body): Rename from lto_input_tree_pointers.
 	(streamer_get_pickled_tree): Rename from lto_get_pickled_tree.
 	(streamer_get_builtin_tree): Rename from lto_get_builtin_tree.
 	(streamer_read_integer_cst): Rename from lto_input_integer_cst.
 	(streamer_read_tree_bitfields): Rename from tree_read_bitfields.
 	(streamer_write_chain): Rename from lto_output_chain.
 	(streamer_write_tree_header): Rename from lto_output_tree_header.
 	(streamer_pack_tree_bitfields): Rename from pack_value_fields.
 	(streamer_write_tree_body): Rename from lto_output_tree_pointers.
 	(streamer_write_integer_cst): Rename from lto_output_integer_cst.
 	(streamer_write_builtin): Rename from lto_output_builtin_tree.
 	(streamer_check_handled_ts_structures): Rename from
 	check_handled_ts_structures.
 	(streamer_tree_cache_insert): Rename from lto_streamer_cache_insert.
 	(streamer_tree_cache_insert_at): Rename from
 	lto_streamer_cache_insert_at.
 	(streamer_tree_cache_append): Rename from lto_streamer_cache_append.
 	(streamer_tree_cache_lookup): Rename from lto_streamer_cache_lookup.
 	(streamer_tree_cache_get): Rename from lto_streamer_cache_get.
 	(streamer_tree_cache_create): Rename from lto_streamer_cache_create.
 	(streamer_tree_cache_delete): Rename from lto_streamer_cache_delete.
 	* tree-streamer-out.c (write_string_cst): Rename from output_string_cst.
 	(write_identifier): Rename from output_identifier.
 	(write_ts_common_tree_pointers): Rename from
 	lto_output_ts_common_tree_pointers.
 	(write_ts_vector_tree_pointers): Rename from
 	lto_output_ts_vector_tree_pointers.
 	(write_ts_complex_tree_pointers): Rename from
 	lto_output_ts_complex_tree_pointers.
 	(write_ts_decl_minimal_tree_pointers): Rename from
 	lto_output_ts_decl_minimal_tree_pointers.
 	(write_ts_decl_common_tree_pointers): Rename from
 	lto_output_ts_decl_common_tree_pointers.
 	(write_ts_decl_non_common_tree_pointers): Rename from
 	lto_output_ts_decl_non_common_tree_pointers.
 	(write_ts_decl_with_vis_tree_pointers): Rename from
 	lto_output_ts_decl_with_vis_tree_pointers.
 	(write_ts_field_decl_tree_pointers): Rename from
 	lto_output_ts_field_decl_tree_pointers.
 	(write_ts_function_decl_tree_pointers): Rename from
 	lto_output_ts_function_decl_tree_pointers.
 	(write_ts_type_common_tree_pointers): Rename from
 	lto_output_ts_type_common_tree_pointers.
 	(write_ts_type_non_common_tree_pointers): Rename from
 	lto_output_ts_type_non_common_tree_pointers.
 	(write_ts_list_tree_pointers): Rename from
 	lto_output_ts_list_tree_pointers.
 	(write_ts_vec_tree_pointers): Rename from
 	lto_output_ts_vec_tree_pointers.
 	(write_ts_exp_tree_pointers): Rename from
 	lto_output_ts_exp_tree_pointers.
 	(write_ts_block_tree_pointers): Rename from
 	lto_output_ts_block_tree_pointers.
 	(write_ts_binfo_tree_pointers): Rename from
 	lto_output_ts_binfo_tree_pointers.
 	(write_ts_constructor_tree_pointers): Rename from
 	lto_output_ts_constructor_tree_pointers.
 	(write_ts_target_option): Rename from
 	lto_output_ts_target_option.
 	(write_ts_translation_unit_decl_tree_pointers): Rename from
 	lto_output_ts_translation_unit_decl_tree_pointers.
 	* tree-streamer.c (streamer_tree_cache_add_to_node_array):
 	Rename from lto_streamer_cache_add_to_node_array.
 	(streamer_tree_cache_insert_1): Rename from lto_streamer_cache_insert_1.
 	(record_common_node): Rename from lto_record_common_node.

	* streamer-hooks.h (bitpack_d, lto_streamer_cache_d): Remove forward
	declarations.
	* data-streamer-in.c (lto_input_widest_uint_uleb128): Remove unused
	function.
	* data-streamer-out.c (lto_output_widest_uint_uleb128_stream): Remove
	unused function.
	* Makefile.in (lto-section-out.o): Add dependency on DATA_STREAMER_H.
	(ipa-reference.o): Likewise.
	* lto-section-out.c: Include data-streamer.h.
	* ipa-reference.c: Include data-streamer.h.

From-SVN: r177704
2011-08-12 12:42:13 -04:00
Nick Clifton 9b0f6f5e51 builtins.c (expand_builtin_memcmp): Do not use cmpstrnsi pattern.
* builtins.c (expand_builtin_memcmp): Do not use cmpstrnsi
	pattern.
	* doc/md.texi (cmpstrn): Note that the comparison stops if both
	fetched bytes are zero.
	(cmpstr): Likewise.
	(cmpmem): Note that the comparison does not stop if both of the
	fetched bytes are zero.

From-SVN: r177701
2011-08-12 16:26:11 +00:00
Steve Ellcey c49b1a299e md5.c (md5_read_ctx): Handle mis-aligned resbuf pointer.
2011-08-12  Steve Ellcey  <sje@cup.hp.com>

	* md5.c (md5_read_ctx): Handle mis-aligned resbuf pointer.

From-SVN: r177700
2011-08-12 16:06:57 +00:00
Paolo Carlini e02d979a34 cmath (fmod(_Tp, _Up)): Add.
2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/c_global/cmath (fmod(_Tp, _Up)): Add.
	* include/c_std/cmath: Likewise.

From-SVN: r177698
2011-08-12 15:40:01 +00:00
Uros Bizjak 6c32ee7449 builtins.def (BUILT_IN_ICEIL{,F,L}, [...]): New builtin definitions.
* builtins.def (BUILT_IN_ICEIL{,F,L}, BUILT_IN_IFLOOR{,F,L}
	BUILT_IN_IRINT{,F,L}, BUILT_IN_IROUND{,F,L}: New builtin definitions.
	* convert.c (convert_to_integer): Convert to BUILT_IN_ICEIL,
	BUILT_IN_IFLOOR, BUILT_IN_IRINT or BUILT_INT_IROUND when converting
	to integer_type_node.
	* fold-const.c (tree_call_nonnegative_warnv_p): Handle BUILT_IN_ICEIL,
	BUILT_IN_IFLOOR, BUILT_IN_IRINT and BUILT_INT_IROUND.
	* builtins.c (expand_builtin_in): Ditto.
	(mathfn_built_in_1): Ditto.
	(expand_builtin_int_roundingfn): Handle BUILT_IN_ICEIL and
	BUILT_IN_IFLOOR.
	(expand_builtin_int_roundingfn_2): Handle BUILT_IN_IRINT and
	BUILT_IN_IROUND.
	(fold_fixed_mathfn): Canonicalize BUILT_IN_ICEIL, BUILTIN_IN_IFLOOR
	BUILT_IN_IRINT and BUILT_IN_IROUND to BUILT_IN_LCEIL,
	BUILTIN_IN_LFLOOR, BUILT_IN_LRINT and BUILT_IN_LROUND on ILP32 targets.

testsuite/ChangeLog:

	* gcc.dg/builtins-67.c: New test.
	* gcc.target/i386/conversion.c: Ditto.

From-SVN: r177694
2011-08-12 14:32:41 +02:00
Richard Biener d9fbc86e44 tree-vrp.c (extract_range_from_unary_expr_1): Implement -X as 0 - X.
2011-08-12  Richard Guenther  <rguenther@suse.de>

	* tree-vrp.c (extract_range_from_unary_expr_1): Implement
	-X as 0 - X.

From-SVN: r177693
2011-08-12 11:29:01 +00:00
Richard Guenther 6aeb8c9919 call.c (build_over_call): Instead of memcpy use an assignment of two MEM_REFs.
2011-08-12  Richard Guenther  <rguenther@suse.de>

	* call.c (build_over_call): Instead of memcpy use an
	assignment of two MEM_REFs.

From-SVN: r177691
2011-08-12 08:55:05 +00:00
Romain Geissler f895fc2a0d install c-tree.h as a plugin header
From-SVN: r177690
2011-08-12 10:19:27 +02:00
Richard Sandiford 20fe71c256 arm.c (get_label_padding): New function.
gcc/
	* config/arm/arm.c (get_label_padding): New function.
	(create_fix_barrier, md_reorg): Likewise.

From-SVN: r177689
2011-08-12 07:59:09 +00:00
GCC Administrator 786eeca2bd Daily bump.
From-SVN: r177688
2011-08-12 00:18:22 +00:00
Uros Bizjak 88b590c512 re PR target/49781 ([x32] Unnecessary lea in x32 mode)
PR target/49781
	* config/i386/i386.md (*lea_5_zext): New.
	(*lea_6_zext): Ditto.
	* config/i386/predicates.md (const_32bit_mask): New predicate.
	(lea_address_operand): Reject AND.
	* config/i386/i386.c (ix86_decompose_address): Allow Dimode AND with
	const_32bit_mask immediate.
	(ix86_print_operand_address): Handle AND.
	(memory_address_length): Ditto.

From-SVN: r177683
2011-08-11 22:03:29 +02:00
Paolo Carlini a4eeb82207 future: constexpr functions are implicitly inline.
2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/future: constexpr functions are implicitly inline.
	* include/std/chrono: Likewise.
	* include/std/complex: Likewise.
	* include/bits/move.h: Likewise.
	* include/bits/stl_pair.h: Likewise.

From-SVN: r177679
2011-08-11 17:53:05 +00:00
Romain Geissler 4309e92c98 plugin.def: Add event for finish_decl.
2011-08-11  Romain Geissler  <romain.geissler@gmail.com>
            Brian Hackett  <bhackett1024@gmail.com>

gcc/ChangeLog:

      * plugin.def: Add event for finish_decl.
      * plugin.c (register_callback, invoke_plugin_callbacks): Same.
      * c-decl.c (finish_decl): Invoke callbacks on above event.
      * doc/plugins.texi: Document above event.

gcc/cp/ChangeLog:

      * decl.c (cp_finish_decl): Invoke callbacks on finish_decl event.

gcc/testsuite/ChangeLog:

      * g++.dg/plugin/decl_plugin.c: New.
      * g++.dg/plugin/decl-plugin-test.C: New.
      * g++.dg/plugin/plugin.exp: Add above testcase.

Co-Authored-By: Brian Hackett <bhackett1024@gmail.com>

From-SVN: r177674
2011-08-11 11:57:38 -04:00
Richard Guenther 25aa059e63 tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid redundant lookups, make looking through aggregate copies stronger.
2011-08-11  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid redundant
	lookups, make looking through aggregate copies stronger.

	* g++.dg/tree-ssa/pr41186.C: Un-XFAIL.

From-SVN: r177672
2011-08-11 15:34:46 +00:00
Rainer Orth 3627ac1ad6 * Makefile.in (install-unwind_h): Remove destination file first.
From-SVN: r177670
2011-08-11 15:19:32 +00:00
Richard Henderson 6bfd73a621 re PR bootstrap/50018 (fixup_args_size_notes ICE breaks m68k-linux bootstrap)
PR bootstrap/50018
        * expr.c (fixup_args_size_notes): Accept and ignore normal calls.

From-SVN: r177669
2011-08-11 08:09:30 -07:00
Richard Guenther 022676dcde lto-cgraph.c (input_node): Use DECL_BUILT_IN.
2011-08-11  Richard Guenther  <rguenther@suse.de>

	* lto-cgraph.c (input_node): Use DECL_BUILT_IN.
	* tree-vrp.c (stmt_interesting_for_vrp): Likewise.
	(vrp_visit_stmt): Likewise.

From-SVN: r177668
2011-08-11 14:34:51 +00:00
Richard Guenther 8d2b04104d re PR middle-end/50040 (missed warning: ‘x.y’ is used uninitialized in this function)
2011-08-11  Richard Guenther  <rguenther@suse.de>

	PR middle-end/50040
	* gimplify.c (gimplify_modify_expr_complex_part): Mark the
	load of the other piece with TREE_NO_WARNING.
	* tree-flow.h (warn_uninit): Adjust prototype.
	* tree-ssa.c (warn_uninit): Take uninitialized SSA name,
	the base variable and the expression that is used separately.
	Properly query all TREE_NO_WARNING flags.
	(struct walk_data): Remove.
	(warn_uninitialized_var): Likewise.
	(warn_uninitialized_vars): Do not walk gimple pieces but simply
	look at all SSA uses of the statement.  Handle unused memory
	separately.
	* tree-ssa-uninit.c (warn_uninitialized_phi): Adjust.

	* g++.dg/warn/unit-1.C: Un-XFAIL.
	* gcc.dg/uninit-I.c: Likewise.

From-SVN: r177667
2011-08-11 14:28:36 +00:00
Michael Matz 0f8de04340 * gcc.dg/graphite/run-id-pr47593.c: Remove -m32.
From-SVN: r177666
2011-08-11 13:43:05 +00:00
Kazuhiro Inaoka 78926be115 rx.md (movsicc): Allow register to register transfers.
* config/rx/rx.md (movsicc): Allow register to register
	transfers.
	(*movsicc): Likewise.
	(*stcc): Restrict this pattern to EQ and NE compares.
	(*stcc_reg): New pattern.  Works for any comparison but only for
	register transfers.

From-SVN: r177665
2011-08-11 12:34:30 +00:00
Diego Novillo c30f448beb Remove bogus ChangeLog edits.
From-SVN: r177662
2011-08-11 08:06:17 -04:00
Diego Novillo b939365672 tree-streamer-out.c (lto_output_ts_decl_with_vis_tree_pointers): Call stream_write_tree instead of output_record_start.
* tree-streamer-out.c (lto_output_ts_decl_with_vis_tree_pointers):
	Call stream_write_tree instead of output_record_start.
	(lto_output_ts_binfo_tree_pointers): Likewise.

	* streamer-hooks.h (stream_write_tree): Move from tree-streamer.h.
	Convert it to a macro.
	(stream_read_tree): Likewise.

	* lto-streamer.h (lto_stream_as_builtin_p): Move ...
	* tree-streamer.h (lto_stream_as_builtin_p): ... here.

	* lto-streamer-in.c (lto_read_tree): Call lto_streamer_cache_append
	and tree_read_bitfields.
	* lto-streamer-out.c (lto_is_streamable): Move from lto-streamer.c
	(lto_write_tree): Call it.
	* lto-streamer.c (lto_is_streamable): Move to lto-streamer-out.c
	* streamer-hooks.h (struct streamer_hooks): Remove fields
	name, is_streamable and alloc_tree. Update all users.
	* tree-streamer-in.c (tree_read_bitfields): Factor out of ...
	(lto_materialize_tree): ... here.
	Handle CALL_EXPR codes.
	Remove call to lto_streamer_cache_append.
	* tree-streamer-out.c (lto_output_tree_header): Handle
	CALL_EXPR nodes.
	* tree-streamer.h (tree_read_bitfields): Declare.

	* Makefile.in (TREE_STREAMER_H): Add STREAMER_HOOKS_H.
	(gimple-streamer-in.o): Add dependency on TREE_STREAMER_H.
	* tree-streamer.h (stream_read_tree): New.  Replace all calls
	to lto_input_tree with it.
	(stream_write_tree): New.  Replace all calls to lto_output_tree,
	lto_output_tree_ref and lto_output_tree_or_ref with it.
	* lto-streamer-in.c (lto_read_tree): Inline code from
	lto_streamer_read_tree.
	(lto_input_tree): Move from tree-streamer-in.c.
	* lto-streamer-out.c (lto_output_tree_ref): Make static.
	Remove handling of NULL values for EXPR.
	Do not handle EXPRs that are not indexable.
	(lto_write_tree): Move from tree-streamer-out.c.
	Inline lto_streamer_write_tree.
	(lto_output_tree): Move from tree-streamer-out.c.
	If REF_P is true and EXPR is indexable, call lto_output_tree_ref.
	* lto-streamer.c (lto_record_common_node): Move to tree-streamer.c.
	(lto_preload_common_nodes): Likewise.
	Remove assertions and adjustments for nodes
	main_identifier_node, ptrdiff_type_node and fileptr_type_node.
	(lto_streamer_hooks_init): Set streamer_hooks.write_tree to
	lto_output_tree and streamer_hooks.read_tree to
	lto_input_tree.
	* lto-streamer.h (lto_input_tree): Declare.
	(lto_output_tree_ref): Remove.
	* streamer-hooks.h (struct streamer_hooks): Remove fields
	preload_common_nodes, indexable_with_decls_p,
	pack_value_fields, unpack_value_fields, output_tree_header and
	has_unique_integer_csts_p.
	Update all users.
	* tree-streamer-in.c (lto_materialize_tree): Make extern.
	(lto_input_tree_pointers): Likewise.
	(lto_read_tree): Move to lto-streamer-in.c.
	(lto_input_integer_cst): Make extern.
	(lto_get_pickled_tree): Likewise.
	(lto_get_builtin_tree): Likewise.
	(lto_input_tree): Move to lto-streamer-in.c.
	* tree-streamer-out.c (pack_value_fields): Make extern.
	(lto_output_tree_or_ref): Remove.  Replace all callers with
	calls to stream_write_tree.
	(lto_output_builtin_tree): Make extern.
	(lto_streamer_write_tree): Inline into lto_write_tree.
	(lto_output_tree_pointers): Make extern.
	(lto_output_tree_header): Likewise.
	(lto_output_integer_cst): Likewise.
	(lto_write_tree): Move to lto-streamer-out.c.
	(lto_output_tree): Likewise.
	* tree-streamer.c (lto_record_common_node): Move from
	lto-streamer.c
	(preload_common_nodes): Likewise.
	(lto_streamer_cache_create): Call it.
	* tree-streamer.h: Include streamer-hooks.h.
	(stream_write_tree): New.
	(stream_read_tree): New.
	(lto_input_tree): Remove.
	(lto_materialize_tree): Declare.
	(lto_input_tree_pointers): Declare.
	(lto_get_pickled_tree): Declare.
	(lto_get_builtin_tree): Declare.
	(lto_input_integer_cst): Declare.
	(lto_output_tree_header): Declare.
	(pack_value_fields): Declare.
	(lto_output_tree_pointers): Declare.
	(lto_output_integer_cst): Declare.
	(lto_output_builtin_tree): Declare.

From-SVN: r177661
2011-08-11 08:02:34 -04:00
Sergey Grechanik cf596bc73f sel-sched-ir.c (get_seqno_of_a_pred): Rename to get_seqno_for_a_jump.
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>

	* sel-sched-ir.c (get_seqno_of_a_pred): Rename to
	get_seqno_for_a_jump.  Update the caller.
	(get_seqno_by_succs): New.  Use it ...
	(get_seqno_for_a_jump): ... here to find a seqno if looking at
	predecessors was not sufficient.
	(get_seqno_by_preds): Include head in iteration range, exclude insn.

From-SVN: r177660
2011-08-11 08:01:54 -04:00
Diego Novillo ae328e332b sel-sched-ir.c (invalidate_av_set): Remove the assert.
2011-08-11  Dmitry Melnik  <dm@ispras.ru>

	* sel-sched-ir.c (invalidate_av_set): Remove the assert.

From-SVN: r177659
2011-08-11 08:01:15 -04:00
Sergey Grechanik ca31ca94f9 sel-sched-ir.c (has_dependence_note_reg_use): Call ds_full_merge only if producer writes to the register given by regno.
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>

	* sel-sched-ir.c (has_dependence_note_reg_use): Call ds_full_merge
	only if producer writes to the register given by regno.

From-SVN: r177658
2011-08-11 15:55:11 +04:00
Sergey Grechanik f089830723 sched-deps.c (sched_get_condition_with_rev): Rename to ...
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>
	    Alexander Monakov  <amonakov@ispras.ru>

	* sched-deps.c (sched_get_condition_with_rev): Rename to ...
	(sched_get_condition_with_rev_uncached): ... this.  Factor out
	condition caching logic into ...
	(sched_get_condition_with_rev): ... this.  Reimplement.  Do not
	attempt to use cache for instructions with zero luid.
	(sched_analyze_insn): Use INSN_CACHED_COND instead of INSN_COND.
	* sched-int.h (INSN_COND): Rename to INSN_CACHED_COND.


Co-Authored-By: Alexander Monakov <amonakov@ispras.ru>

From-SVN: r177657
2011-08-11 15:53:51 +04:00
Sergey Grechanik 0d9439b07c sel-sched-ir.c (get_seqno_of_a_pred): Rename to get_seqno_for_a_jump.
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>

	* sel-sched-ir.c (get_seqno_of_a_pred): Rename to
	get_seqno_for_a_jump.  Update the caller.
	(get_seqno_by_succs): New.  Use it ...
	(get_seqno_for_a_jump): ... here to find a seqno if looking at
	predecessors was not sufficient.
	(get_seqno_by_preds): Include head in iteration range, exclude insn.

From-SVN: r177656
2011-08-11 15:50:27 +04:00
Dmitry Melnik 5c416724e0 sel-sched-ir.c (invalidate_av_set): Remove the assert.
2011-08-11  Dmitry Melnik  <dm@ispras.ru>

	* sel-sched-ir.c (invalidate_av_set): Remove the assert.

From-SVN: r177655
2011-08-11 15:49:16 +04:00