Commit Graph

80230 Commits

Author SHA1 Message Date
Diego Novillo
e9e0aa2c96 re PR tree-optimization/30735 (50% slow down due to mem-ssa merge)
PR 30735
	PR 31090
	* doc/invoke.texi: Document --params max-aliased-vops and
	avg-aliased-vops.
	* tree-ssa-operands.h (get_mpt_for, dump_memory_partitions,
	debug_memory_partitions): Move to tree-flow.h
	* params.h (AVG_ALIASED_VOPS): Define.
	* tree-ssa-alias.c (struct mp_info_def): Remove.  Update all
	users.
	(mp_info_t): Likewise.
	(get_mem_sym_stats_for): New.
	(set_memory_partition): Move from tree-flow-inline.h.
	(mark_non_addressable): Only clear the set of symbols for the
	partition if it exists.
	(dump_memory_partitions): Move from tree-ssa-operands.c
	(debug_memory_partitions): Likewise.
	(need_to_partition_p): New.
	(dump_mem_ref_stats): New.
	(debug_mem_ref_stats): New.
	(dump_mem_sym_stats): New.
	(debug_mem_sym_stats): New.
	(update_mem_sym_stats_from_stmt): New.
	(compare_mp_info_entries): New.
	(mp_info_cmp): Call it.
	(sort_mp_info): Change argument to a list of mem_sym_stats_t
	objects.
	(get_mpt_for): Move from tree-ssa-operands.c.
	(find_partition_for): New.
	(create_partition_for): Remove.
	(estimate_vop_reduction): New.
	(update_reference_counts): New.
	(build_mp_info): New.
	(compute_memory_partitions): Refactor.
	Document new heuristic.
	Call build_mp_info, update_reference_counts,
	find_partition_for and estimate_vop_reduction.
	(compute_may_aliases): Populate virtual operands before
	calling debugging dumps.
	(delete_mem_sym_stats): New.
	(delete_mem_ref_stats): New.
	(init_mem_ref_stats): New.
	(init_alias_info): Call it.
	(maybe_create_global_var): Remove alias_info argument.
	Get number of call sites and number of pure/const call sites
	from gimple_mem_ref_stats().
	(dump_alias_info): Call dump_memory_partitions first.
	(dump_points_to_info_for): Show how many times a pointer has
	been dereferenced.
	* opts.c (decode_options): For -O2 set --param
	max-aliased-vops to 500.
	For -O3 set --param max-aliased-vops to 1000 and --param
	avg-aliased-vops to 3.
	* fortran/options.c (gfc_init_options): Remove assignment to
	MAX_ALIASED_VOPS.
	* tree-flow-inline.h (gimple_mem_ref_stats): New.
	* tree-dfa.c (dump_variable): Dump memory reference
	statistics.
	Dump NO_ALIAS* settings.
	(referenced_var_lookup): Tidy.
	(mem_sym_stats): New.
	* tree-ssa-copy.c (may_propagate_copy): Return true if DEST
	and ORIG are different SSA names for a memory partition.
	* tree-ssa.c (delete_tree_ssa): Call delete_mem_ref_stats.
	* tree-flow.h (struct mem_sym_stats_d): Define.
	(mem_sym_stats_t): Define.
	(struct mem_ref_stats_d): Define.
	(struct gimple_df): Add field mem_ref_stats.
	(enum noalias_state): Define.
	(struct var_ann_d): Add bitfield noalias_state.
	(mem_sym_stats, delete_mem_ref_stats, dump_mem_ref_stats,
	debug_mem_ref_stats, debug_memory_partitions,
	debug_mem_sym_stats): Declare.
	* tree-ssa-structalias.c (update_alias_info): Update call
	sites, pure/const call sites and asm sites in structure
	returned by gimple_mem_ref_stats.
	Remove local variable IS_POTENTIAL_DEREF.
	Increase NUM_DEREFS if the memory expression is a potential
	dereference.
	Call update_mem_sym_stats_from_stmt.
	If the memory references memory, call
	update_mem_sym_stats_from_stmt for all the direct memory
	symbol references found.
	(intra_create_variable_infos): Set noalias_state field for
	pointer arguments according to the value of
	flag_argument_noalias.
	* tree-ssa-structalias.h (struct alias_info): Remove fields
	num_calls_found and num_pure_const_calls_found.
	(update_mem_sym_stats_from_stmt): Declare.
	* params.def (PARAM_MAX_ALIASED_VOPS): Change description.
	Set default value to 100.
	(PARAM_AVG_ALIASED_VOPS): Define.

From-SVN: r123719
2007-04-11 12:14:06 -04:00
Paolo Carlini
574e75f5fb istream (class basic_istream<>): Remove unneded friend declarations.
2007-04-11  Paolo Carlini  <pcarlini@suse.de>

	* include/std/istream (class basic_istream<>): Remove unneded friend
	declarations.

From-SVN: r123718
2007-04-11 15:58:15 +00:00
Paolo Carlini
54e2e812fe 1.cc: Initialize v.
2007-04-11  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/22_locale/num_get/get/wchar_t/1.cc: Initialize v.

From-SVN: r123717
2007-04-11 15:22:34 +00:00
Paolo Carlini
90737ab777 locale_facets.tcc (num_get<>::do_get(iter_type, ios_base&, ios_base::iostate&, void*&)): Fix for sizeof(void*) > sizeof(unsigned long).
2007-04-11  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
	ios_base&, ios_base::iostate&, void*&)): Fix for sizeof(void*)
	> sizeof(unsigned long).

	* testsuite/22_locale/num_get/get/char/1.cc: Fix void* test.
	* testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.

	* testsuite/22_locale/num_put/put/char/1.cc: Tweak comment.
	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.

From-SVN: r123716
2007-04-11 15:19:15 +00:00
Richard Guenther
4bf371ea7e re PR middle-end/31530 (Incorrect folding of multiplication and sign change when followed by an addition)
2007-04-11  Richard Guenther  <rguenther@suse.de>

	PR middle-end/31530
	* simplify-rtx.c (simplify_binary_operation_1): Do not simplify
	a * -b + c as c - a * b if we honor sign dependent rounding.

From-SVN: r123715
2007-04-11 11:13:54 +00:00
Bernd Schmidt
266d11d862 bfin-protos.h (bfin_expand_movmem): Renamed from bfin_expand_strmov.
* config/bfin/bfin-protos.h (bfin_expand_movmem): Renamed from
	bfin_expand_strmov.
	* config/bfin/bfin.c (bfin_expand_prologue, bfin_delegitimize_address,
	bfin_function_ok_for_sibcall, split_load_immediate): Remove unused
	variables.
	(initialize_trampoline): Don't use old-style function definition.
	(bfin_secondary_reload): Mark IN_P argument as unused.

From-SVN: r123714
2007-04-11 11:06:44 +00:00
Zack Weinberg
c74620b05b iosfwd: Do not include <bits/c++locale.h> and <bits/functexcept.h>.
2007-04-11  Zack Weinberg  <zack@mrtock.ucsd.edu>

	* include/std/iosfwd: Do not include <bits/c++locale.h> and
	<bits/functexcept.h>.

From-SVN: r123713
2007-04-11 10:12:47 +00:00
Tobias Burnus
2b3fd25f63 re PR testsuite/31240 (gfortran.dg/pointer_intent_1.f90 failure at -O0)
2007-04-11  Tobias Burnus  <burnus@net-b.de>

       PR testsuite/31240
       * gfortran.dg/pointer_intent_1.f90: Fix test.

From-SVN: r123712
2007-04-11 09:28:49 +02:00
Jan Hubicka
ffd3439269 class.c (convert_to_base_statically): Fold produced tree; verify that we are not processing template_decl.
* cp/class.c (convert_to_base_statically): Fold produced tree; verify
	that we are not processing template_decl.

From-SVN: r123711
2007-04-11 06:18:28 +00:00
Benjamin Kosnik
113008b54b cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify namespace std members.
2007-04-10  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/pb_ds/detail/resize_policy/
	cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify
	namespace std members.	
	* include/ext/pb_ds/detail/list_update_policy/
	counter_lu_metadata.hpp: Same.
	* include/ext/throw_allocator.h: Same.
	* include/ext/pod_char_traits.h: Same.
	* include/ext/malloc_allocator.h: Same.
	* libsupc++/del_op.cc: Same, simplify.

	* include/bits/c++config: Adjust macro name.
	
	* include/c_global/cstring: Alphabetize.
	* include/c_global/cwctype: Same.

From-SVN: r123710
2007-04-11 01:11:56 +00:00
Sebastian Pop
e9793dae58 re PR tree-optimization/31343 (ICE in data-refs dependence testing)
PR tree-optimization/31343
	* tree-chrec.h (chrec_zerop): Moved before build_polynomial_chrec.
	(build_polynomial_chrec): Return a scalar when the evolution is zero.
	* testsuite/gcc.dg/vect/pr31343.c: New.

From-SVN: r123708
2007-04-11 00:09:35 +00:00
GCC Administrator
0334147da1 Daily bump.
From-SVN: r123706
2007-04-10 23:17:25 +00:00
Eric Christopher
3783f02682 2007-04-10 Eric Christopher <echristo@apple.com>
* lib/target-supports.exp
        (check_effective_target_fstack_protector): Rewrite.

From-SVN: r123702
2007-04-10 23:00:00 +00:00
Eric Christopher
246b8cf5d7 Add to last commit.
From-SVN: r123701
2007-04-10 22:44:02 +00:00
Eric Christopher
54a8809004 i386.h (X87_FLOAT_MODE_P): New.
2007-04-10  Eric Christopher  <echristo@apple.com>

	    * config/i386/i386.h (X87_FLOAT_MODE_P): New.
	    * config/i386/i386.md (*cmpfp0): Use.
	    (*cmpfp_u, *cmpfp_<mode>, *cmpfp_i_i387): Ditto.
	    (*cmpfp_iu_387, fix_trunc<mode>_fisttp_i386_1): Ditto.
	    (fix_trunc<mode>_i386_fisttp): Ditto.
	    (fix_trunc<mode>_i387_fisttp_with_temp): Ditto.
	    (*fix_trunc<mode>_i387_1, fix_truncdi_i387): Ditto.
	    (fix_truncdi_i387_with_temp, fix_trunc<mode>_i387): Ditto.
	    (fix_trunc<mode>_i387_with_temp, *fp_jcc_1_387): Ditto.
	    (*fp_jcc_2_387, *fp_jcc_5_387, *fp_jcc_6_387): Ditto.
	    (*fp_jcc_7_387, *fp_jcc_8<mode>_387): Ditto.
	    (unnamed_splitters): Ditto.
	    * config/i386/i386.c (output_fix_trunc): Assert that
	    we're not being passed a TFmode operand.

From-SVN: r123700
2007-04-10 22:41:28 +00:00
Zdenek Dvorak
7c57be853d re PR tree-optimization/31526 (ICE in alloc_aux_for_block())
PR tree-optimization/31526
	* tree-inline.c (copy_cfg_body): Use last_basic_block instead of
	n_basic_blocks to find newly added blocks.

From-SVN: r123699
2007-04-10 21:10:26 +00:00
Keith Seitz
a93fc2890c sources.am: Regenerate.
* sources.am: Regenerate.
        * Makefile.in: Likewise.

From-SVN: r123697
2007-04-10 17:52:59 +00:00
Paolo Carlini
d81db5b091 cmath: Include <bits/stl_algobase.h> instead of the whole <algorithm>.
2007-04-10  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/cmath: Include <bits/stl_algobase.h> instead of
	the whole <algorithm>.

From-SVN: r123696
2007-04-10 15:54:46 +00:00
Paolo Carlini
05beb8e720 type_traits (__is_function_helper): New, uses variadic templates.
2007-04-10  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (__is_function_helper): New, uses
	variadic templates.
	(is_function): Forward to the latter.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/
	is_function/is_function.cc: Add test.

From-SVN: r123695
2007-04-10 15:12:54 +00:00
Uros Bizjak
0218c0120c i386.md (fix_trunc<mode>di_sse): Remove "x" from "xm" alternative.
* config/i386/i386.md (fix_trunc<mode>di_sse): Remove "x" from "xm"
	alternative.
	(fix_trunc<mode>si_sse): Ditto.
	(*floatsisf2_mixed, *floatsisf2_sse): Ditto.
	(*floatsidf2_mixed, *floatsidf2_sse): Ditto.
	(*floatdisf2_mixed, *floatdisf2_sse): Ditto.
	(*floatdidf2_mixed, *floatdidf2_sse): Ditto.
	(floathi<mode>2): Rename from floathisf2 and floathidf2. Macroize
	expander using SSEMODEF mode macro.
	(floatsi<mode>2): Rename from floatsisf2 and floashidf2. Macroize
	expander using SSEMODEF mode macro.
	(*floathi<mode>2_i387): Rename from *floathisf2_i387 and
	*floathidf2_i387. Macroize insn using X87MODEF12 mode macro.
	(*floatsi<mode>2_i387): Rename from *floatsisf2_i387 and
	*floatsidf2_i387. Macroize insn using X87MODEF12 mode macro.
	(*floatdi<mode>2_i387): Rename from *floatdisf2_i387 and
	*floatdidf2_i387. Macroize insn using X87MODEF12 mode macro.
	(float<mode>xf2): Rename from floathixf2, floatsixf2 and floatdixf2.
	Macroize insn using X87MODEF mode macro.

From-SVN: r123693
2007-04-10 13:41:01 +02:00
Paolo Carlini
11202768fe PR libstdc++/28277 (partial: vstring bits)
2007-04-10  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/28277 (partial: vstring bits)
	* include/bits/ostream_insert.h: New.
	* include/Makefile.am: Add.
	* include/ext/vstring.h (operator<<(basic_ostream<>&,
	const __versa_string<>&): Forward to __ostream_insert.
	* include/bits/basic_string.h (operator<<(basic_ostream<>&,
	const string<>&)): Likewise.
	* include/std/ostream (operator<<(basic_ostream<>&, _CharT),
	operator<<(basic_ostream<char,>&, char), operator<<(basic_ostream<>&,
	const _CharT*), operator<<(basic_ostream<char,>&, const char*)):
	Likewise.
	* include/ext/vstring.tcc (operator<<(basic_ostream<>&,
	const __versa_string<>&)): Remove.
	(class basic_ostream): Remove friend declarations.
	(basic_ostream<>::_M_write(char_type, streamsize),
	_M_insert(const char_type*, streamsize)): Remove.
	* include/bits/ostream.tcc (_M_insert(const char_type*, streamsize)):
	Remove definition.
	(operator<<(basic_ostream<>&, const char*)): Use __ostream_insert.
	* config/abi/pre/gnu.ver: Adjust.
	* src/ostream-inst.cc: Add __ostream_insert instantiations.
	* include/bits/locale_facets.h (__pad<>::_S_pad): Remove __num
	parameter.
	* include/bits/locale_facets.tcc (__pad<>::_S_pad): Adjust.
	(num_put<>::_M_pad(_CharT, streamsize, ios_base&, _CharT*,
	const _CharT*, int&)): Likewise.
	* include/Makefile.in: Rebuild.
	* testsuite/ext/vstring/inserters_extractors/char/28277.cc: New.
	* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: New.

	* include/ext/vstring_util.h: Do not include the whole <locale>.
	* include/ext/vstring.tcc (operator>>(basic_istream<>&,
	__versa_string<>&, getline(basic_istream<>&, __versa_string<>&,
	_CharT)): Tweak to refer to ios_base as a base of istream; do not
	refer to non-standard types of istream.
	* include/bits/istream.tcc (operator>>(basic_istream<>&, _CharT*),
	ws(basic_istream<>&)): Do not refer to non-standard types of istream.
	* include/std/bitset (operator>>(std::basic_istream<>&, bitset<>&)):
	Avoid using basic_streambuf<>*.

	* include/bits/istream.tcc (operator>>(basic_istream<>&,
	basic_string<>&), getline(basic_istream<>&, basic_string<>&, _CharT)):
	Move...
	* include/bits/basic_string.tcc: ... here; tweak to refer to ios_base
	as a base of istream; do not refer to non-standard types of istream.
	* include/std/string: Tweak includes.

	* include/ext/type_traits.h (__is_null_pointer): Add.
	* include/ext/rc_string_base.h: Use it.
	* include/ext/sso_string_base.h: Likewise.
	* include/bits/basic_string.tcc (__is_null_pointer): Remove, use
	the above.
	* include/ext/vstring_util.h (__vstring_utility<>::_S_is_null_pointer):
	Remove.

From-SVN: r123692
2007-04-10 10:38:50 +00:00
H.J. Lu
3117d1b509 sse.md (sse2_pinsrw): Removed.
2007-04-09  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/sse.md (sse2_pinsrw): Removed.
	(sse2_pextrw): Renamed to ...
	(*sse2_pextrw): This.

From-SVN: r123689
2007-04-09 18:58:03 -07:00
GCC Administrator
eb908811ae Daily bump.
From-SVN: r123685
2007-04-09 23:17:05 +00:00
Jan Hubicka
c141e4992b re PR target/27869 ("-O -fregmove" handles SSE scalar instructions incorrectly)
PR target/27869
	* config/i386/sse.md
	(sse_vmaddv4sf3, sse_vmmulv4sf3): Remove '%' modifier.
	(sse_vmsmaxv4sf3_finite, sse_vmsminv4sf3_finite): Remove.
	(sse2_vmaddv2df3, sse2_vmmulv2df3): Remove '%' modifier.
	(sse2_vmsmaxv2df3_finite, sse2_vmsminv2df3_finite): Remove.

From-SVN: r123682
2007-04-09 23:06:16 +00:00
Kyle Galloway
b1bdab7eb5 interpret-run.cc: If debugging, check if args is NULL before getting the "this" pointer.
2007-04-09  Kyle Galloway  <kgallowa@redhat.com>

	* interpret-run.cc: If debugging, check if args is NULL before
	getting the "this" pointer.

From-SVN: r123681
2007-04-09 20:32:19 +00:00
Kyle Galloway
aa2473e4fc ArrayValue.java: New file.
2007-04-09  Kyle Galloway  <kgallowa@redhat.com>

	* classpath/gnu/classpath/jdwp/value/ArrayValue.java: New file.
	* classpath/lib/gnu/classpath/jdwp/value/ArrayValue.class: New file.
	* gnu/classpath/jdwp/ArrayValue.h: New file.
	* gnu/classpath/jdwp/natVMFrame.cc (getValue): Add array case.
	(setValue): Ditto.

From-SVN: r123680
2007-04-09 20:30:20 +00:00
Mark Mitchell
a607b96e80 re PR c++/31449 ([4.1] static_cast can remove const-ness)
PR c++/31449
	* class.c (build_base_path): Ensure that the converted pointer has
	the same cv-qualification as the input.
	PR c++/31449
	* g++.dg/init/const5.C: New test.

From-SVN: r123679
2007-04-09 19:45:53 +00:00
Andrew Ruder
80ae8e8ad2 sendmsg.c: Added __objc_msg_forward2...
2007-04-09  Andrew Ruder  <andy@aeruder.net>

        * sendmsg.c: Added __objc_msg_forward2, a hook that allows
        external libraries to provide a function that returns the real
        forwarding function based on both the selector and the receiver.
        * objc/objc-api.h: Define __objc_msg_forward2.

From-SVN: r123678
2007-04-09 11:04:50 -07:00
David Daney
ecc0fc15ec Fix ChangeLog date.
From-SVN: r123677
2007-04-09 17:46:17 +00:00
David Daney
290b7f64b5 re PR libgcj/23758 (java::lang::ConcreteProcess::nativeSpawn unsafe)
PR libgcj/23758
	* java/lang/natPosixProcess.cc (nativeSpawn): Move building of
	environment before the fork.
	* testsuite/libjava.lang/Process_7.java: New test.
	* testsuite/libjava.lang/Process_7.out: Its expected results.
	* testsuite/libjava.lang/Process_7.jar: Generated file.

From-SVN: r123676
2007-04-09 17:40:20 +00:00
Paolo Carlini
22931aa4a9 type_traits_fwd.h (__is_union_or_class): Remove.
2007-04-09  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits_fwd.h (__is_union_or_class): Remove.
	* include/tr1/type_traits (struct __in_array,
	struct __is_union_or_class, struct __is_union_or_class_helper,
	struct __is_empty_helper, struct __is_polymorphic_helper):
	Remove.
	(struct is_enum): Use __is_enum.
	(struct is_union): Use __is_union.
	(struct is_class): Use __is_class.
	(struct is_function): Adjust.
	(struct is_empty): Use __is_empty.
	(struct is_polymorphic): Use __is_polymorphic.
	(struct is_abstract): Use __is_abstract.
	(struct has_virtual_destructor): Use __has_virtual_destructor.
	(struct __is_base_of_helper): Use __is_base_of.
	* testsuite/tr1/4_metaprogramming/composite_type_traits/
	is_union_or_class/typedefs.cc: Remove.
	* testsuite/tr1/4_metaprogramming/composite_type_traits/
	is_union_or_class/is_union_or_class.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/
	is_class/typedefs.cc: New.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/
	is_class/is_class.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/
	is_union/typedefs.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/
	is_union/is_union.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_virtual_destructor/typedefs.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_virtual_destructor/has_virtual_destructor.cc: Likewise.
	* testsuite/util/testsuite_tr1.h (class VirtualDestructorClass): Add.
	* testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
	is_polymorphic.cc: Add test.

From-SVN: r123675
2007-04-09 17:07:37 +00:00
Jan Hubicka
6e6e19cbf5 foldaddr-3.c: New file.
* gcc.dg/tree-ssa/foldaddr-3.c: New file.

	* tree-ssa-ccp (maybe_fold_offset_to_component_ref): Recurse into
	multiple fields of union.

From-SVN: r123674
2007-04-09 17:00:10 +00:00
Paolo Carlini
ea798d0f66 tree.c (cp_tree_equal): Deal with TRAIT_EXPR.
2007-04-09  Paolo Carlini  <pcarlini@suse.de>

	* tree.c (cp_tree_equal): Deal with TRAIT_EXPR.

From-SVN: r123673
2007-04-09 16:33:33 +00:00
H.J. Lu
70275c384c prims.cc (load_jvmti_agent): Add the missing `,'.
2007-04-09  H.J. Lu  <hongjiu.lu@intel.com>

	* prims.cc (load_jvmti_agent): Add the missing `,'.

From-SVN: r123672
2007-04-09 08:07:08 -07:00
Kyle Galloway
3fe9aa9ea7 gij.cc (main): Accept -agentlib and -agentpath options.
2007-04-09  Kyle Galloway  <kgallowa@redhat.com>

	* gij.cc (main): Accept -agentlib and -agentpath options.
	* prims.cc (parse_init_args): Deal with -agentlib and -agentpath.
	(load_jvmti_agent): New function.

From-SVN: r123671
2007-04-09 13:24:00 +00:00
Zdenek Dvorak
c7b852c8a6 cfgloopmanip.c (create_preheader): Do not use loop_preheader_edge.
* cfgloopmanip.c (create_preheader): Do not use loop_preheader_edge.
	(create_preheaders): Check that loops are available.
	(fix_loop_structure): Clean up, improve comments.
	* tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa):
	Check that loops are available.  Set LOOP_CLOSED_SSA to the loops
	state flags.
	* tree-scalar-evolution.c (scev_finalize): Clear scalar_evolution_info.
	* predict.c (tree_estimate_probability): Do not call
	calculate_dominance_info.  Call create_preheaders.
	* tree-cfgcleanup.c (cleanup_tree_cfg_loop): Only call
	rewrite_into_loop_closed_ssa if LOOP_CLOSED_SSA is set in loops state
	flags.
	* cfgloop.c (loop_preheader_edge): Assert that loops have preheaders.
	* cfgloop.h (LOOP_CLOSED_SSA): New constant.
	* tree-cfg.c (tree_split_edge): Make an assert more precise.
	* tree-ssa-threadedge.c (thread_across_edge): Comment the function
	arguments.

From-SVN: r123670
2007-04-09 06:51:43 +00:00
GCC Administrator
782c9150c3 Daily bump.
From-SVN: r123668
2007-04-08 23:17:01 +00:00
Alexey Beshenov
ad1a64baff re PR libstdc++/31511 (/usr/include/c++/bits/cmath.tcc: no match for ternary 'operator?:' in '((__n % 2u) != 0u) ? __x : 1')
2007-04-08  Alexey Beshenov  <bav.272304@gmail.com>

	PR libstdc++/31511
	* include/c_global/cmath.tcc (__cmath_power): Use _Tp(1).
	* include/c_std/cmath.tcc (__cmath_power): Likewise.

From-SVN: r123665
2007-04-08 22:37:56 +00:00
Jan Hubicka
c586d32a1e tree.h (maybe_fold_offset_to_component_ref): Declare.
* tree.h (maybe_fold_offset_to_component_ref): Declare.
	* tree-ssa-ccp.c (maybe_fold_offset_to_component_ref): Export.
	* fold-const.c (fold_unary): Use it.

	* gcc.dg/tree-ssa/foldaddr-2.c: New file.

From-SVN: r123664
2007-04-08 22:12:21 +00:00
Andrew Pinski
136cdb2250 varasm.c (assemble_variable): Remove call to lang_hooks.decls.prepare_assemble_variable.
2007-04-08  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * varasm.c (assemble_variable): Remove call to
        lang_hooks.decls.prepare_assemble_variable.
        * langhooks-def.h (LANG_HOOKS_PREPARE_ASSEMBLE_VARIABLE): Kill.
        (LANG_HOOKS_DECLS): Remove LANG_HOOKS_PREPARE_ASSEMBLE_VARIABLE.
        * langhooks.h (lang_hooks_for_decls): Remove
        prepare_assemble_variable.

From-SVN: r123663
2007-04-08 12:30:06 -07:00
Mike Stump
77c1632f35 * config/i386/i386.c: Use inc/dec on Core2.
From-SVN: r123662
2007-04-08 16:30:23 +00:00
Steven Bosscher
cb9c159dc0 langhooks.c (lhd_tree_inlining_add_pending_fn_decls, [...]): Remove.
* langhooks.c (lhd_tree_inlining_add_pending_fn_decls,
	lhd_tree_inlining_anon_aggr_type_p, lhd_tree_inlining_start_inlining,
	lhd_tree_inlining_end_inlining): Remove.
	* langhooks.h (struct lang_hooks_for_tree_inlining): Remove then
	add_pending_fn_decls, anon_aggr_type_p, start_inlining, and
	end_inlining hooks.
	* langhooks-def.h (lhd_tree_inlining_add_pending_fn_decls,
	lhd_tree_inlining_anon_aggr_type_p, lhd_tree_inlining_start_inlining,
	lhd_tree_inlining_end_inlining): Remove prototypes.
	(LANG_HOOKS_TREE_INLINING_ADD_PENDING_FN_DECLS,
	LANG_HOOKS_TREE_INLINING_ANON_AGGR_TYPE_P,
	LANG_HOOKS_TREE_INLINING_START_INLINING,
	LANG_HOOKS_TREE_INLINING_END_INLINING): Remove.

	* c-objc-common.h (LANG_HOOKS_TREE_INLINING_ANON_AGGR_TYPE_P): Do
	not set it.

cp/
	* cp-objcp-common.h (LANG_HOOKS_TREE_INLINING_ADD_PENDING_FN_DECLS):
	Do not set it.
	(LANG_HOOKS_TREE_INLINING_ANON_AGGR_TYPE_P): Do not set it.
	* tree.c (cp_add_pending_fn_decls): Remove.
	* cp-tree.h (cp_add_pending_fn_decls): Remove prototype.

From-SVN: r123658
2007-04-08 13:14:39 +00:00
Anatoly Sokolov
d8a1f0fb64 re PR target/29932 (avr-gcc wrongly optimizes bit sets/resets for IO register 0x20)
PR target/29932
	* config/avr/predicates.md (io_address_operand): Delete predicate.
	(low_io_address_operand): Don't use 'mode' argument.
	(higth_io_address_operand): Rename ...
	(high_io_address_operand): ... to this. Don't use 'mode' argument.
	* config/avr/avr.md (*sbix_branch_tmp, *sbix_branch_tmp_bit7): Adjust
	for above change.

From-SVN: r123657
2007-04-08 14:38:38 +04:00
GCC Administrator
92447572b4 Daily bump.
From-SVN: r123653
2007-04-07 23:17:02 +00:00
Daniel Berlin
270c60bb5f 2007-04-07 Daniel Berlin <dberlin@dberlin.org>
Revert change removing staticp.

From-SVN: r123650
2007-04-07 23:08:23 +00:00
Anatoly Sokolov
ee57a66148 re PR target/30289 (avr-gcc: builtin memset(): wrong code)
PR target/30289
	* config/avr/avr.md (*clrmemqi, *clrmemhi): Mark operand 4 as 
	earlyclobber.

From-SVN: r123647
2007-04-08 02:00:33 +04:00
Paul Thomas
3c19e5e1a1 re PR fortran/31257 (ICE in gfc_conv_expr_descriptor)
2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/31257
	* intrinsic.c (add_functions): Add ref. to gfc_resolve_achar.
	* intrinsic.h : Add prototype for gfc_resolve_achar.
	* iresolve.c (gfc_resolve_achar): New function.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/31257
	* gfortran.dg/achar_4.f90: New test.

From-SVN: r123646
2007-04-07 20:29:13 +00:00
Paul Thomas
145bdc2cbc re PR fortran/30880 (Derived types with default value -- function with ENTRY: rejected at compile time)
2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/30880
	* resolve.c (resolve_fl_variable): Set flag to 2 for automatic
	arrays.  Make condition for automatic array error explicit.
	If a dummy, no error on an INTENT(OUT) derived type.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/30880
	* gfortran.dg/used_dummy_types_8.f90: New test.

From-SVN: r123645
2007-04-07 20:25:43 +00:00
Paul Thomas
4c6b3ec750 re PR fortran/30872 (Bogus "size of variable is too large")
2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/30872
	* expr.c (find_array_element): Correct arithmetic for rank > 1.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/30872
	* gfortran.dg/parameter_array_element_1.f90: New test.

From-SVN: r123644
2007-04-07 20:23:40 +00:00
Paul Thomas
909a3e38aa re PR fortran/31222 (Rejected: implicitly-typed dummys used in initialization expressions)
2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/31222
	* check.c (numeric_check): If an expresson has not got a type,
	see if it is a symbol for which a default type applies.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/31222
	* gfortran.dg/default_numeric_type_1.f90: New test.

From-SVN: r123643
2007-04-07 20:20:49 +00:00