Commit Graph

77428 Commits

Author SHA1 Message Date
Zdenek Dvorak 8f8bb1d200 tree-flow.h (name_mappings_registered_p): Declare.
* 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
2006-11-12 20:59:28 +00:00
Zdenek Dvorak 4d2280f60d tree-ssa-loop.c (tree_vectorize): Return the result of vectorize_loops.
* 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
2006-11-12 20:11:53 +00:00
Zdenek Dvorak 911b3fdbe3 tree-ssa-loop-prefetch.c (schedule_prefetches): Cleanup and improve comments.
* 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
2006-11-12 20:05:49 +00:00
Zdenek Dvorak 946e1bc757 Makefile.in (tree-data-ref.o): Add langhooks.h dependency.
* 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
2006-11-12 19:58:05 +00:00
Zdenek Dvorak 47eb5b329b params.c (set_param_value): Initialize the "set" field.
* 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
2006-11-12 19:17:02 +00:00
Roger Sayle 015e23f400 re PR tree-optimization/13827 ((a & b) != (c & b) should be transformed to ((a^c) & b) !=0)
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
2006-11-12 18:41:31 +00:00
Zdenek Dvorak c0493b13fb cfgloopmanip.c (update_single_exit_for_duplicated_loop, [...]): New functions.
* 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
2006-11-12 18:20:03 +00:00
David Daney 8a492e2cbf re PR java/29805 (Write past end of array in java/typeck.c)
PR java/29805
	* typeck.c (build_java_array_type): Increase buffer sizes.

From-SVN: r118724
2006-11-12 17:12:13 +00:00
Andreas Schwab c57d40281c * except.c (sjlj_emit_function_enter): Remove unused variable.
From-SVN: r118723
2006-11-12 11:15:28 +00:00
Paolo Carlini 56acf88c0f bitmap_allocator.h: Uglify some names.
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
2006-11-12 10:37:00 +00:00
Paul Thomas 41f1662296 Correcting ChangeLog errors
From-SVN: r118721
2006-11-12 10:15:04 +00:00
Roger Sayle 000d8d44b7 fold-const.c (int_binop_types_match_p): New function.
* 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
2006-11-12 02:57:10 +00:00
Andrew Pinski afa8f0fb33 re PR rtl-optimization/28812 (RTL aliasing vs may_alias and structs)
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
2006-11-11 17:10:56 -08:00
Jie Zhang a607b34fff revert: bfin.h (TARGET_CPU_CPP_BUILTINS): Define __bfin__ and __BFIN__.
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
2006-11-12 00:27:46 +00:00
Jie Zhang a167b3e88c bfin.h (TARGET_CPU_CPP_BUILTINS): Define __bfin__ and __BFIN__.
* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define __bfin__
	and __BFIN__.

From-SVN: r118711
2006-11-12 00:21:30 +00:00
GCC Administrator e3bf7298c3 Daily bump.
From-SVN: r118709
2006-11-12 00:17:50 +00:00
Tobias Schlüter b3916b71ea Fix entry missing from previously committed ChangeLog
From-SVN: r118703
2006-11-11 20:20:11 +01:00
Tobias Schlüter ef56b98dcb Fix typo in previous check-in
From-SVN: r118702
2006-11-11 18:56:11 +01:00
Paolo Carlini eebbe2c70e re PR libstdc++/29496 (_M_invalidate function is not thread-safe in GLIBCXX_DEBUG mode)
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
2006-11-11 17:32:12 +00:00
Tobias Schlüter bc0a33d315 data.c: Add 2006 to copyright years.
* data.c: Add 2006 to copyright years.
* interface.c: Same.
* misc.c: Same.
* trans-io.c: Same.

From-SVN: r118700
2006-11-11 18:10:24 +01:00
Kaveh R. Ghazi dffb147de1 configure.in (have_gmp): Only error if the gcc directory exists.
* configure.in (have_gmp): Only error if the gcc directory exists.
	
	* configure: Regenerate.

From-SVN: r118699
2006-11-11 17:02:04 +00:00
Jan Hubicka 9871e7a0c5 Oops, commited wrong variant of patch in last commit, this is the diff
to correct one.

From-SVN: r118698
2006-11-11 16:57:13 +00:00
Jan Hubicka 0817c46a98 extended.texi (__builtin_expect): We no longer require second argument to be constant.
* 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
2006-11-11 16:55:48 +00:00
Jan Hubicka ef950eba66 extended.texi (__builtin_expect): We no longer require second argument to be constant.
* 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
2006-11-11 16:54:57 +00:00
Kaveh R. Ghazi 89fa98d6b9 tree-pretty-print.c (dump_generic_node): Print sign of Inf.
* tree-pretty-print.c (dump_generic_node): Print sign of Inf.

From-SVN: r118695
2006-11-11 16:51:17 +00:00
Jan Hubicka 992c31e623 * predict.c (predict_loops): Kill RTL variant.
From-SVN: r118694
2006-11-11 16:13:09 +00:00
Jan Hubicka 6039a0c74a tree-pass.h (pass_purge_lineno_notes): Remove declaration.
* tree-pass.h (pass_purge_lineno_notes): Remove declaration.
	* modulo-sched.c (find_line_note): Remove.
	(loop_canon_p): Do not worry about line number notes.
	(sms_schedule): Likewise.
	* cse.c (cse_main): Likewise.
	* regmove.c (fixup_match_1): Likewise
	* function.c (emit_return_info_block): Likewise.
	(expand_function_end): Likewise.
	(thread_prologue_an_epilogue_insns): Likewise.
	* cfgrtl.c (try_redirect_by_replacing_jump, rtl_tidy_fallthru_edge):
	Likewise.
	* emit-rtl.c (find_line_note, emit_insn_after_with_line_notes,
	emit_note_copy_after): Kill.
	(emit_note_copy): Do not worry about line numbers.
	* jump.c (purge_line_number_notes): Kill.
	(pass_purge_lineno_notes): Kill.
	* cfgcleanup.c (rest_of_handle_jump2): Kill purge_line_number_notes
	call.
	* rtl.h (emit_note_copy_after, emit_insn_after_with_line_notes): Kill.
	* passes.c (init_optimization_passes): Don't purge_lineno_notes.
	* sched-ebb.c (schedule_ebbs): Don't do rm_redundant_line_notes.
	* tree-pass.h (pass_purge_lineno_notes): Kill.
	* sched-ebb.c (schedule_ebb): Don't rm_line_notes,
	rm_redundant_line_notes.
	* sched-rgb.c (schedule_region): Don't rm_line_notes,
	rm_redundant_line_notes.
	* sched-int.h (rm_line_notes, rm_redundant_line_notes): Kill.
	* haifa-sched.c: Update comment about handling notes.
 	(unlink_line_notes): Kill.
	(rm_line_notes): Kill.
	(save_line_notes): Simplify.
	(rm_redundant_line_notes): Kill.

From-SVN: r118693
2006-11-11 15:50:16 +00:00
Richard Guenther f9f770a8d5 tree.def (FIX_CEIL_EXPR, [...]): Remove unused tree codes.
2006-11-11  Richard Guenther  <rguenther@suse.de>

	* tree.def (FIX_CEIL_EXPR, FIX_FLOOR_EXPR, FIX_ROUND_EXPR):
	Remove unused tree codes.
	* tree-vrp.c (extract_range_from_unary_expr): Remove handling
	of FIX_CEIL_EXPR, FIX_FLOOR_EXPR and FIX_ROUND_EXPR.
	* tree-pretty-print.c (dump_generic_node, op_prio): Likewise.
	* tree.c (stabilize_reference): Likewise.
	* fold-const.c (fold_convert_const_int_from_real, operand_equal_p,
	fold_unary): Likewise.
	* tree-gimple.c (is_gimple_cast): Likewise.
	* dwarf2out.c (loc_descriptor_from_tree_1): Likewise.
	* expr.c (expand_expr_real_1): Likewise.
	* tree-eh.c (tree_could_trap_p): Likewise.
	* gimplify.c (gimplify_expr): Likewise.
	* tree-inline.c (estimate_num_insns_1): Likewise.
	* tree-cfg.c (verify_expr): Likewise.

	cp/
	* typeck.c (build_unary_op): Likewise.

	java/
	* check-init.c (check_init): Likewise.

	ada/
	* trans.c (maybe_stabilize_reference): Likewise.

	fortran/
	* trans-intrinsic.c (enum rounding_mode): New enum.
	(build_fix_expr, gfc_conv_intrinsic_aint, gfc_conv_intrinsic_mod,
	gfc_conv_intrinsic_function): Use it instead of FIX_CEIL_EXPR,
	FIX_FLOOR_EXPR, FIX_ROUND_EXPR and FIX_TRUNC_EXPR.

From-SVN: r118692
2006-11-11 12:05:16 +00:00
Zdenek Dvorak e324a72fe6 tree-ssa-loop.c (pass_loop_prefetch): Change name to aprefetch.
* tree-ssa-loop.c (pass_loop_prefetch): Change name to aprefetch.
	* tree-ssa-loop-prefetch.c (dump_mem_ref): Fix target file.
	(tree_ssa_prefetch_arrays): Do not dump for removed loops.

From-SVN: r118691
2006-11-11 10:15:18 +00:00
Richard Sandiford 6d40c48924 re PR middle-end/27528 (compiling linux kernels 2.6.16.14/15 2.6.17-rc3 on powerpc (7450) get error on long exixting code)
gcc/
	PR middle-end/27528
	* stmt.c (expand_asm_operands): Use EXPAND_INITIALIZER if the
	constraints accept neither registers or memories.

gcc/testsuite/
	PR middle-end/27528
	* gcc.c-torture/compile/pr27528.c: New test.
	* gcc.dg/pr27528.c: Likewise.

From-SVN: r118689
2006-11-11 09:47:35 +00:00
Jie Zhang 5601414805 bfin.h (FUNCTION_PROFILER): Don't use LABELNO.
* config/bfin/bfin.h (FUNCTION_PROFILER): Don't use LABELNO.
	(NO_PROFILE_COUNTERS): Define as 1.

From-SVN: r118686
2006-11-11 07:48:33 +00:00
Roger Sayle 85914552c7 fold-const.c (operand_equal_p): Don't check for TREE_CONSTANT_OVERFLOW when comparing constants.
* fold-const.c (operand_equal_p) <INTEGER_CST, REAL_CST, VECTOR_CST>:
	Don't check for TREE_CONSTANT_OVERFLOW when comparing constants.

From-SVN: r118685
2006-11-11 05:00:10 +00:00
Peter Bergner adb43ed451 rtl.h (MEM_COPY_ATTRIBUTES): Copy MEM_POINTER.
* rtl.h (MEM_COPY_ATTRIBUTES): Copy MEM_POINTER.

From-SVN: r118684
2006-11-10 22:20:37 -06:00
Kaveh R. Ghazi b81e7144aa builtins.c (fold_builtin_cos): Use fold_strip_sign_ops().
* builtins.c (fold_builtin_cos): Use fold_strip_sign_ops().
	(fold_builtin_hypot): Likewise.
	* fold-const.c (fold_strip_sign_ops): Handle "odd" builtins.
	
testsuite:
	* gcc.dg/builtins-20.c: Add more cases for stripping sign ops.

From-SVN: r118683
2006-11-11 04:05:14 +00:00
Kaveh R. Ghazi 345768ef3f fold-const.c (negate_mathfn_p): Add BUILT_IN_ERF.
* fold-const.c (negate_mathfn_p): Add BUILT_IN_ERF.

testsuite:
	* gcc.dg/torture/builtin-symmetric-1.c: New test.

From-SVN: r118682
2006-11-11 04:01:42 +00:00
Roger Sayle b8b7f1621f tree.c (build_int_cst_wide): Add an assertion (gcc_unreachable) when attempting to build INTEGER_CSTs of...
* tree.c (build_int_cst_wide): Add an assertion (gcc_unreachable)
	when attempting to build INTEGER_CSTs of non-integral types.
	* expmed.c (make_tree): Use the correct type, i.e. the inner
	type, when constructing the individual elements of a CONST_VECTOR.

From-SVN: r118678
2006-11-11 01:47:18 +00:00
GCC Administrator 845e145b6d Daily bump.
From-SVN: r118676
2006-11-11 00:17:31 +00:00
Brooks Moses 100401682c Corrected gfc_process_option to gfc_handle_option in my last
ChangeLog entry.

From-SVN: r118670
2006-11-10 15:43:05 -08:00
Brooks Moses 131ac5dd47 lang.opt (-fmodule-private): Remove option.
* lang.opt (-fmodule-private): Remove option.
* gfortran.h (gfc_option_t): Remove module_access_private flag.
* options.c (gfc_init_options): Remove initialization for it.
(gfc_process_option): Remove handling for -fmodule-private.
* module.c (gfc_check_access): Add comments, remove check for
gfc_option.flag_module_access_private.

(Also fixed tab-damage in preceeding changelog entry.)

From-SVN: r118668
2006-11-10 14:34:26 -08:00
Jan Hubicka 3e916873cb cse.c (cse_process_notes): Copy the propagated value.
* cse.c (cse_process_notes): Copy the propagated value.
	* local-alloc.c (update_equiv_regs): Copy the memory RTX to be used
	in REG_EQUIV notes.
	* gcse.c (try_replace_reg): Copy the replacement.
	* i386.c (emit_i387_cw_initialization): Copy stored_mode
	(assign_386_stack_local): Always return copied memory expression
	* function.c (instantiate_virtual_regs_in_insn): Copy the operand
	duplicates.

From-SVN: r118665
2006-11-10 21:42:04 +00:00
Paul Thomas d8d8121add re PR fortran/29758 (Runtime segfault in RESHAPE with insufficient elements in SOURCE)
2006-11-10 Paul Thomas <pault@gcc.gnu.org>

   PR fortran/29758
   * check.c (gfc_check_reshape): Check that there are enough
   elements in the source array as to be able to fill an array
   defined by shape, when pad is absent.


2006-11-10 Paul Thomas <pault@gcc.gnu.org>

   PR fortran/29758
   * gfortran.dg/reshape_source_size_1.f90: New test.

From-SVN: r118664
2006-11-10 21:06:42 +00:00
Frank Ch. Eigler f70d742fc8 re PR libmudflap/28578 (A most simple multithreaded program (practically any multithreaded one) causes mudflap violation)
2006-11-10  Frank Ch. Eigler  <fche@redhat.com>

	PR libmudflap/28578
	* mf-hooks1.c (__mf_0fn_malloc): Make the bootstrap buffers
	static but not function scope static.
	(free): Skip deallocation attempts for objects placed into
	bootstrap buffers.
	* testsuite/libmudflap.cth/pass59-frag.c: New test.


M    libmudflap/mf-hooks1.c
M    libmudflap/ChangeLog
A    libmudflap/testsuite/libmudflap.cth/pass59-frag.c

From-SVN: r118662
2006-11-10 18:42:28 +00:00
Tobias Burnus a6b03a63d6 re PR fortran/29454 (Slightly wrong error message for IF statement)
2006-11-10  Tobias Burnus  <burnus@net-b.de>

       PR fortran/29454
       * resolve.c (gfc_resolve_blocks): Fix error message.

From-SVN: r118661
2006-11-10 19:15:39 +01:00
Paul Thomas 95fe073894 re PR fortran/29315 (error passing an array derived from type element)
2006-11-10 Paul Thomas <pault@gcc.gnu.org>

	PR fortran/29315
	* trans-expr.c (is_aliased_array): Treat correctly the case where the
	component is itself and array or array reference.


2006-11-10 Paul Thomas <pault@gcc.gnu.org>

	PR fortran/29315
	* gfortran.dg/aliasing_dummy_4.f90: New test.

From-SVN: r118659
2006-11-10 17:21:57 +00:00
Jakub Jelinek 29520adf7d c_locale.cc (__convert_to_v): Prefer strtold_l over __strtold_l if available.
* config/locale/gnu/c_locale.cc (__convert_to_v): Prefer
	strtold_l over __strtold_l if available.

From-SVN: r118654
2006-11-10 16:50:39 +01:00
Jan Hubicka 9ff5780962 final.c (final): Walk from first instruction.
* final.c (final): Walk from first instruction.
	* cfglayout.c (insn_locators_initialize): Remove line number notes.

From-SVN: r118650
2006-11-10 09:30:33 +00:00
Uros Bizjak 0e9dac9e16 re PR tree-optimization/29777 (missed optimization: model missing widen_mult* idioms for SSE)
PR target/29777
	* config/i386/sse.md (smulv8hi3_highpart): Change from define_insn
	to define_expand.
	(umulv8hi3_highpart): Ditto.
	(vec_widen_smult_hi_v8hi): New expander.
	(vec_widen_smult_lo_v8hi): Ditto.

testsuite/ChangeLog:

	PR target/29777
        * lib/target-supports.exp (vect_widen_mult_hi_to_si): Add i?86-*-*
	and x86_64-*-* targets.

From-SVN: r118649
2006-11-10 09:45:47 +01:00
Kaveh R. Ghazi e61e5ddcce builtins.c (do_mpfr_arg3): New.
* builtins.c (do_mpfr_arg3): New.
	(fold_builtin_1): Handle builtins fma, fmin and fmax.

testsuite:
	* gcc.dg/torture/builtin-math-2.c: Test builtin fma.
	* gcc.dg/torture/builtin-math-3.c (CKSGN_F, CKSGN, CKSGN_L):
	New macros. Use them in exact tests.
	(TESTIT3): New macro.
	Add tests for fmin, fmax and fma.

From-SVN: r118648
2006-11-10 04:26:31 +00:00
Brooks Moses f5bf550c9d * check.c (same_type_check): Typo fix in comment.
From-SVN: r118647
2006-11-09 19:38:43 -08:00
GCC Administrator 9fac74620f Daily bump.
From-SVN: r118639
2006-11-10 00:17:39 +00:00