1. 13 Nov, 2006 14 commits
  2. 12 Nov, 2006 17 commits
    • builtins.c (fold_builtin_cosh): New. · 5c5b2155
      	* builtins.c (fold_builtin_cosh): New.
      	(fold_builtin_1): Use it.
      	* fold-const.c (negate_mathfn_p): Add llround, lround, round,
      	trunc to the list of "odd" functions.  Also add llrint, lrint,
      	rint and nearbyint when flag_rounding_math is false.
      
      testsuite:
      	* gcc.dg/torture/builtin-symmetric-1.c: Add more cases.
      
      From-SVN: r118733
      Kaveh R. Ghazi committed
    • tree-flow.h (name_mappings_registered_p): Declare. · 8f8bb1d2
      	* tree-flow.h (name_mappings_registered_p): Declare.
      	* tree-into-ssa.c (name_mappings_registered_p): New function.
      	* tree-cfg.c (tree_can_merge_blocks_p): Check
      	name_mappings_registered_p instead of need_ssa_update_p.
      
      From-SVN: r118732
      Zdenek Dvorak committed
    • tree-ssa-loop.c (tree_vectorize): Return the result of vectorize_loops. · 4d2280f6
      	* tree-ssa-loop.c (tree_vectorize): Return the result of
      	vectorize_loops.
      	* tree-vectorizer.c (vectorize_loops): Return TODO_cleanup_cfg
      	if anything changed.
      	* tree-vectorizer.h (vectorize_loops): Declaration removed.
      	* tree-flow.h (vectorize_loops): Declaration changed.
      
      From-SVN: r118731
      Zdenek Dvorak committed
    • tree-ssa-loop-prefetch.c (schedule_prefetches): Cleanup and improve comments. · 911b3fdb
      	* tree-ssa-loop-prefetch.c (schedule_prefetches): Cleanup and improve
      	comments.
      	(issue_prefetch_ref): Move assignment to write_p out of loop.
      	(determine_unroll_factor): Do not take PARAM_MAX_UNROLL_TIMES and
      	SIMULTANEOUS_PREFETCHES into account.
      	(loop_prefetch_arrays): Do not pass ahead to determine_unroll_factor.
      	* lambda-code.c (lcm): Renamed to ...
      	(least_common_multiple): ... and exported.
      	* tree-flow.h (least_common_multiple): Declare.
      
      From-SVN: r118730
      Zdenek Dvorak committed
    • Makefile.in (tree-data-ref.o): Add langhooks.h dependency. · 946e1bc7
      	* Makefile.in (tree-data-ref.o): Add langhooks.h dependency.
      	* tree-ssa-loop-niter.c (derive_constant_upper_bound):  Follow
      	ud-chains.  Handle AND_EXPR.
      	(record_estimate): Record whether the estimate is realistic
      	and whether it is derived from a loop exit.
      	(record_nonwrapping_iv, idx_infer_loop_bounds, infer_loop_bounds_from_ref,
      	infer_loop_bounds_from_array, infer_loop_bounds_from_signedness): New
      	functions.
      	(compute_estimated_nb_iterations): Take only realistic bounds into
      	account.  Set estimate_state.  Use double_ints.
      	(infer_loop_bounds_from_undefined): Call infer_loop_bounds_from_array
      	and infer_loop_bounds_from_signedness.  Do not consider basic blocks
      	that do not have to be always executed.
      	(estimate_numbers_of_iterations_loop): Set estimate_state, and use it
      	to determine whether to call infer_loop_bounds_from_undefined
      	and compute_estimated_nb_iterations.
      	(n_of_executions_at_most): Use double_ints.
      	(free_numbers_of_iterations_estimates_loop): Set estimate_state.
      	(substitute_in_loop_info): Do not replace in estimated_nb_iterations.
      	* double-int.c (double_int_to_tree): Improve comment.
      	(double_int_fits_to_tree_p): New function.
      	* double-int.h (double_int_fits_to_tree_p): Declare.
      	* tree-data-ref.c: Include langhooks.h.
      	(estimate_niter_from_size_of_data, estimate_iters_using_array): Removed.
      	(analyze_array_indexes): Do not call estimate_niter_from_size_of_data.
      	(analyze_array): Do not pass estimate_only argument to
      	analyze_array_indexes.
      	(get_number_of_iters_for_loop): Build tree from the stored double_int
      	value.
      	(get_references_in_stmt, find_data_references_in_stmt): New functions.
      	(find_data_references_in_loop): Use find_data_references_in_stmt.
      	* tree-data-ref.h (struct data_ref_loc_d): New.
      	(get_references_in_stmt): Declare.
      	(estimate_iters_using_array): Declaration removed.
      	* cfgloop.h (struct nb_iter_bound): Change type of bound to
      	double_int.  Improve comments.  Add is_exit and realistic
      	fields.
      	(struct loop): Changed type of estimated_nb_iterations to double_int.
      	Added estimate_state field.
      	(record_estimate): Declaration removed.
      
      From-SVN: r118729
      Zdenek Dvorak committed
    • params.c (set_param_value): Initialize the "set" field. · 47eb5b32
      	* params.c (set_param_value): Initialize the "set" field.
      	* params.h (struct param_info): Add "set" field.
      	(PARAM_SET_P): New macro.
      	(PREFETCH_LATENCY, SIMULTANEOUS_PREFETCHES, L1_CACHE_SIZE,
      	L1_CACHE_LINE_SIZE): New macros.
      	* toplev.c (DEFPARAM): Initialize the "set" field.
      	* tree-ssa-loop-prefetch.c (PREFETCH_LATENCY,
      	SIMULTANEOUS_PREFETCHES): Removed.
      	(PREFETCH_BLOCK): Use L1_CACHE_LINE_SIZE.
      	(tree_ssa_prefetch_arrays): Dump the values of the parameters.
      	* config/sparc/sparc.c: Include params.h.
      	(sparc_override_options): Set SIMULTANEOUS_PREFETCHES and
      	L1_CACHE_LINE_SIZE parameters.
      	* config/sparc/sparc.h (PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES):
      	Removed.
      	* config/i386/i386.h (PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES):
      	Removed.
      	* config/i386/i386.c: Include params.h.
      	(k8_cost): Change default value for SIMULTANEOUS_PREFETCHES.
      	(override_options): Set SIMULTANEOUS_PREFETCHES and
      	L1_CACHE_LINE_SIZE parameters.
      	* config/sh/sh.h (SIMULTANEOUS_PREFETCHES): Removed.
      	(OPTIMIZATION_OPTIONS): Set SIMULTANEOUS_PREFETCHES and
      	L1_CACHE_LINE_SIZE parameters.
      	* config/ia64/ia64.c (ia64_optimization_options): Set
      	SIMULTANEOUS_PREFETCHES and L1_CACHE_LINE_SIZE parameters.
      	* config/ia64/ia64.h (SIMULTANEOUS_PREFETCHES, PREFETCH_BLOCK):
      	Removed.
      	* params.def (PARAM_PREFETCH_LATENCY, PARAM_SIMULTANEOUS_PREFETCHES,
      	PARAM_L1_CACHE_SIZE, PARAM_L1_CACHE_LINE_SIZE): New params.
      	* doc/invoke.texi: Document new params.
      
      From-SVN: r118728
      Zdenek Dvorak committed
    • re PR tree-optimization/13827 ((a & b) != (c & b) should be transformed to ((a^c) & b) !=0) · 015e23f4
      
      	PR tree-optimization/13827
      	* fold-const.c (fold_binary) <EQ_EXPR, NE_EXPR>: Fold (X&C) op (Y&C)
      	as ((X^Y)&C) op 0.
      
      	* gcc.dg/fold-eqand-1.c: New test case.
      
      From-SVN: r118727
      Roger Sayle committed
    • cfgloopmanip.c (update_single_exit_for_duplicated_loop, [...]): New functions. · c0493b13
      	* cfgloopmanip.c (update_single_exit_for_duplicated_loop,
      	update_single_exit_for_duplicated_loops): New functions.
      	(duplicate_loop_to_header_edge): Use
      	update_single_exit_for_duplicated_loops.
      	* tree-ssa-loop-manip.c (tree_unroll_loop): Call verification
      	functions only with ENABLE_CHECKING.
      
      From-SVN: r118726
      Zdenek Dvorak committed
    • re PR java/29805 (Write past end of array in java/typeck.c) · 8a492e2c
      	PR java/29805
      	* typeck.c (build_java_array_type): Increase buffer sizes.
      
      From-SVN: r118724
      David Daney committed
    • bitmap_allocator.h: Uglify some names. · 56acf88c
      2006-11-12  Paolo Carlini  <pcarlini@suse.de>
      
      	* include/ext/bitmap_allocator.h: Uglify some names.
      	* include/ext/concurrence.h: Likewise.
      	* src/bitmap_allocator.cc: Likewise.
      
      From-SVN: r118722
      Paolo Carlini committed
    • Correcting ChangeLog errors · 41f16622
      From-SVN: r118721
      Paul Thomas committed
    • fold-const.c (int_binop_types_match_p): New function. · 000d8d44
      
      	* fold-const.c (int_binop_types_match_p): New function.
      	(size_binop): Relax constraint that both arguments must both have
      	exactly the same sizetype type.  Instead use int_binop_types_match_p.
      	(size_diffop): Likewise.
      
      	(make_range): Use build_int_cst instead of fold_convert.
      	(fold_cond_expr_with_comparison): Use build_int_cst to construct
      	integer constants of the correct type.
      	(fold_div_compare): Likewise.
      	(fold_single_bit_test): Likewise.
      	(fold_binary): Likewise.
      	* stor-layout.c (layout_type) <VECTOR_TYPE>: Ensure that TYPE_SIZE
      	has type bitsizetype and TYPE_SIZE_UNIT has type sizetype.
      
      From-SVN: r118718
      Roger Sayle committed
    • re PR rtl-optimization/28812 (RTL aliasing vs may_alias and structs) · afa8f0fb
      2006-11-11  Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
              PR rtl-opt/28812
              * alias.c (fixed_scalar_and_varying_struct_p): Don't return a
              non null value if the struct memory access is in the 0th
              aliasing set.
      
      2006-11-11  Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
              PR rtl-opt/28812
              * gcc.c-torture/execute/mayalias-3.c: New test.
      
      From-SVN: r118716
      Andrew Pinski committed
    • revert: bfin.h (TARGET_CPU_CPP_BUILTINS): Define __bfin__ and __BFIN__. · a607b34f
      	Revert
      	2006-11-11  Jie Zhang  <jie.zhang@analog.com>
      	* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define __bfin__
      	and __BFIN__.
      
      	* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Use builtin_define_std
      	instead of builtin_define for bfin and BFIN.
      
      From-SVN: r118713
      Jie Zhang committed
    • bfin.h (TARGET_CPU_CPP_BUILTINS): Define __bfin__ and __BFIN__. · a167b3e8
      	* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define __bfin__
      	and __BFIN__.
      
      From-SVN: r118711
      Jie Zhang committed
    • Daily bump. · e3bf7298
      From-SVN: r118709
      GCC Administrator committed
  3. 11 Nov, 2006 9 commits
    • Fix entry missing from previously committed ChangeLog · b3916b71
      From-SVN: r118703
      Tobias Schlüter committed
    • Fix typo in previous check-in · ef56b98d
      From-SVN: r118702
      Tobias Schlüter committed
    • re PR libstdc++/29496 (_M_invalidate function is not thread-safe in GLIBCXX_DEBUG mode) · eebbe2c7
      2006-11-11  Paolo Carlini  <pcarlini@suse.de>
      
      	PR libstdc++/29496
      	* include/debug/safe_base.h (_Safe_sequence_base::_M_get_mutex,
      	_Safe_iterator_base::_M_get_mutex, _M_attach_single, _M_detach_single):
      	New.
      	* src/debug.cc: Define the latter.
      	(_Safe_sequence_base::_M_detach_all, _M_detach_singular,
      	_M_revalidate_singular, _M_swap): Use the mutex.
      	(_Safe_iterator_base::_M_attach, _M_detach): Adjust, forward to the
      	*_single version.
      	* include/debug/safe_iterator.h (_Safe_iterator<>::_M_attach_single,
      	_M_invalidate_single): New.
       	* include/debug/safe_iterator.tcc: Define.
      	(_Safe_iterator<>::_M_invalidate): Adjust, forward to
      	_M_invalidate_single.
      	* include/debug/safe_sequence.h (_Safe_sequence<>::_M_invalidate_if,
      	_M_transfer_iter): Use the mutex, adjust, forward to the *_single
      	versions of _M_invalidate and _M_attach.
      	* config/abi/pre/gnu.ver (_Safe_sequence_base::_M_get_mutex,
      	_Safe_iterator_base::_M_get_mutex, _M_attach_single, _M_detach_single):
      	Add @GLIBCXX_3.4.10; adjust.
      	* configure.ac (libtool_VERSION): To 6:10:0.
      	* testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.10.
      	* configure: Regenerate.
      
      From-SVN: r118701
      Paolo Carlini committed
    • data.c: Add 2006 to copyright years. · bc0a33d3
      * data.c: Add 2006 to copyright years.
      * interface.c: Same.
      * misc.c: Same.
      * trans-io.c: Same.
      
      From-SVN: r118700
      Tobias Schlüter committed
    • configure.in (have_gmp): Only error if the gcc directory exists. · dffb147d
      	* configure.in (have_gmp): Only error if the gcc directory exists.
      	
      	* configure: Regenerate.
      
      From-SVN: r118699
      Kaveh R. Ghazi committed
    • Oops, commited wrong variant of patch in last commit, this is the diff · 9871e7a0
      to correct one.
      
      From-SVN: r118698
      Jan Hubicka committed
    • extended.texi (__builtin_expect): We no longer require second argument to be constant. · 0817c46a
      
      	* extended.texi (__builtin_expect): We no longer require second argument
      	to be constant.
      	* gengtype.c (adjust_field_rtx_def): Drop NOTE_INSN_EXPECTED_VALUE.
      	* builtins.c (expand_builtin_expect): Simplify.
      	(expand_builtin_expect_jump): Kill.
      	* final.c (final_scan_insn): Do not skip the removed notes.
      	* insn-notes.def (LOOP_BEG, LOOP_END, REPEATED_LINE_NUMBER,
      	EXPECTED_VALUE): Remove.
      	* dojump.c (do_jump): Do not care about __builtin_expect.
      	* predict.c (expected_value_to_br_prob): Kill.
      	* function.c (expand_function_end): Do not expand
      	NOTE_INSN_REPEATED_LINE_NUMBER.
      	* print-rtl.c (print_rtx): Do not pretty print the removed notes.
      	* expect.c (sjlj_emit_function_enter): Emit directly branch probability.
      	* cfgexpand.c (add_reg_br_prob_note): Export.
      	* cfgcleanup.c (rest_of_handle_jump2): Do not call
      	expected_value_to_br_prob.
      	* cfglayout.c (duplicate_insn_chain): Do not deal with removed notes.
      	* rtl.h (add_reg_br_prob_note): Declare.
      
      From-SVN: r118697
      Jan Hubicka committed
    • extended.texi (__builtin_expect): We no longer require second argument to be constant. · ef950eba
      
      	* extended.texi (__builtin_expect): We no longer require second argument
      	to be constant.
      	* gengtype.c (adjust_field_rtx_def): Drop NOTE_INSN_EXPECTED_VALUE.
      	* builtins.c (expand_builtin_expect): Simplify.
      	(expand_builtin_expect_jump): Kill.
      	* final.c (final_scan_insn): Do not skip the removed notes.
      	* insn-notes.def (LOOP_BEG, LOOP_END, REPEATED_LINE_NUMBER,
      	EXPECTED_VALUE): Remove.
      	* dojump.c (do_jump): Do not care about __builtin_expect.
      	* predict.c (expected_value_to_br_prob): Kill.
      	* function.c (expand_function_end): Do not expand
      	NOTE_INSN_REPEATED_LINE_NUMBER.
      	* print-rtl.c (print_rtx): Do not pretty print the removed notes.
      	* expect.c (sjlj_emit_function_enter): Emit directly branch probability.
      	* cfgexpand.c (add_reg_br_prob_note): Export.
      	* cfgcleanup.c (rest_of_handle_jump2): Do not call
      	expected_value_to_br_prob.
      	* cfglayout.c (duplicate_insn_chain): Do not deal with removed notes.
      	* rtl.h (add_reg_br_prob_note): Declare.
      
      From-SVN: r118696
      Jan Hubicka committed
    • tree-pretty-print.c (dump_generic_node): Print sign of Inf. · 89fa98d6
      	* tree-pretty-print.c (dump_generic_node): Print sign of Inf.
      
      From-SVN: r118695
      Kaveh R. Ghazi committed