2013-09-30  Chris Jefferson  <chris@bubblescope.net>

	PR libstdc++/58437
	* include/bits/stl_algo.h (__move_median_first): Rename to
	__move_median_to_first, change to take an addition argument.
	(__unguarded_partition_pivot): Adjust.
	* testsuite/performance/25_algorithms/sort.cc: New.
	* testsuite/performance/25_algorithms/sort_heap.cc: Likewise.
	* testsuite/performance/25_algorithms/stable_sort.cc: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203035 138bc75d-0d04-0410-961f-82ee72b054a4
compiler: Use backend interface for variable expressions.

	* go-gcc.cc (Backend::error_expression): New function.
	(Backend::var_expression): New function.
	(Backend::indirect_expression): New function.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203038 138bc75d-0d04-0410-961f-82ee72b054a4
2013-09-30  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/parallel/algo.h (__find_switch): Use __binder2nd.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203040 138bc75d-0d04-0410-961f-82ee72b054a4
	* tree-ssa-threadupdate.c (ssa_fix_duplicate_block_edges):
	Update redirected out edge count in joiner case.
	(ssa_redirect_edges): Common the joiner and non-joiner cases
	so that joiner case gets profile updates.

	* testsuite/gcc.dg/tree-ssa/ssa-dom-thread-3.c (expand_one_var):
	Update for additional dump message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203041 138bc75d-0d04-0410-961f-82ee72b054a4
	PR middle-end/58564
	* fold-const.c (fold_ternary_loc): For A < 0 : <sign bit of A> : 0
	optimization, punt if sign_bit_p looked through any zero extension.

	* gcc.c-torture/execute/pr58564.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203042 138bc75d-0d04-0410-961f-82ee72b054a4
	PR middle-end/58564
	* fold-const.c (tree_unary_nonnegative_warnv_p): Use
	INTEGRAL_TYPE_P (t) instead of TREE_CODE (t) == INTEGER_TYPE.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203044 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* basic-block.h (edge_list): Prefix member names with "m_".
	* context.h (context): Likewise.
	* domwalk.h (dom_walker): Likewise.
	* gengtype-state.c (s_expr_writer, state_writer): Likewise.
	* graphite-sese-to-poly.c (sese_dom_walker): Likewise.
	* hash-table.h (hash_table): Likewise.
	* machmode.h (bit_field_mode_iterator): Likewise.
	* pass_manager.h (pass_list): Likewise.
	* tree-into-ssa.c (mark_def_dom_walker): Likewise.
	* tree-pass.h (pass_data): Likewise.
	* tree-ssa-dom.c (dom_opt_dom_walker): Likewise.
	* tree-ssa-phiopt.c (nontrapping_dom_walker): Likewise,
	* tree-ssa-uncprop.c (uncprop_dom_walker): Likewise.
	* asan.c (pass_data_asan): Update accordingly.
	* cfganal.c (control_dependences::find_control_dependence): Likewise.
	(control_dependences::control_dependences): Likewise.
	(control_dependences::~control_dependences): Likewise.
	(control_dependences::~control_dependences): Likewise.
	(control_dependences::get_edges_dependent_on): Likewise.
	* cgraphbuild.c (pass_data_rebuild_cgraph_edges::clone): Likewise.
	(pass_data_remove_cgraph_callee_edges::clone): Likewise.
	* context.c (gcc::context::context): Likewise.
	* cprop.c (pass_rtl_cprop::clone): Likewise.
	* domwalk.c (dom_walker::walk): Likewise.
	* ipa-inline-analysis.c (pass_inline_parameters::clone): Likewise.
	* ipa-pure-const.c (pass_local_pure_const::clone): Likewise.
	* mode-switching.c (pass_mode_switching::clone): Likewise.
	* passes.c (opt_pass::opt_pass): Likewise.
	(pass_manager::pass_manager): Likewise.
	* predict.c (pass_strip_predict_hints::clone): Likewise.
	* recog.c (pass_data pass_data_peephole2::clone): Likewise.
	(pass_split_all_insns::clone): Likewise.
	* stor-layout.c (bit_field_mode_iterator::bit_field_mode_iterator):
	Likewise.
	(bit_field_mode_iterator::next_mode): Likewise.
	(bit_field_mode_iterator::prefer_smaller_modes): Likewise.
	* tree-cfg.c (pass_split_crit_edges::clone): Likewise.
	* tree-cfgcleanup.c (pass_merge_phi::clone): Likewise.
	* tree-complex.c (pass_lower_complex::clone): Likewise.
	* tree-eh.c (pass_cleanup_eh::clone): Likewise.
	* tree-object-size.c (pass_object_sizes::clone): Likewise.
	* tree-optimize.c (pass_fixup_cfg::clone): Likewise.
	* tree-ssa-ccp.c (pass_data_ccp::clone): Likewise.
	(pass_fold_builtins::clone): Likewise.
	* tree-ssa-copy.c (pass_data_copy_prop::clone): Likewise.
	* tree-ssa-copyrename.c (pass_rename_ssa_copies::clone): Likewise.
	* tree-ssa-dce.c (pass_dce::clone, pass_dce_loop::clone): Likewise.
	(pass_cd_dce::clone): Likewise.
	* tree-ssa-dom.c (pass_dominator::clone): Likewise.
	(pass_phi_only_cprop::clone): Likewise.
	* tree-ssa-dse.c (pass_dse::clone): Likewise.
	* tree-ssa-forwprop.c (pass_forwprop::clone): Likewise.
	* tree-ssa-loop.c (pass_lim::clone): Likewise.
	* tree-ssa-phiopt.c (pass_phiopt::clone): Likewise.
	* tree-ssa-pre.c (pass_fre::clone): Likewise.
	* tree-ssa-reassoc.c (pass_reassoc::clone): Likewise.
	* tree-ssa-uninit.c (pass_late_warn_uninitialized::clone): Likewise.
	* tree-tailcall.c (pass_tail_recursion::clone): Likewise.
	* tree-vect-generic.c (pass_lower_vector_ssa::clone): Likewise.
	* tree-vrp.c (pass_vrp::clone): Likewise.
	* tsan.c (pass_tsan::clone): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203046 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* vec.h (vec_prefix, vec): Prefix member names with "m_".
	* vec.c (vec_prefix::calculate_allocation): Update accordingly.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203047 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203051 138bc75d-0d04-0410-961f-82ee72b054a4
reflect: Fix reflect.Call with function following non-pointer.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203052 138bc75d-0d04-0410-961f-82ee72b054a4
2013-10-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/58553
	* tree-loop-distribution.c (struct partition_s): Add niter member.
	(classify_partition): Populate niter member for the partition
	and properly identify whether the relevant store happens before
	or after the loop exit.
	(generate_memset_builtin): Use niter member from the partition.
	(generate_memcpy_builtin): Likewise.

	* gcc.dg/torture/pr58553.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203054 138bc75d-0d04-0410-961f-82ee72b054a4
	* lib/target-supports.exp (check_effective_target_ptr32plus): Fail
	for MSP430.
	* gcc.c-torture/compile/20010327-1.c: Only run the test for
	ptr32plus targets.
	* gcc.c-torture/compile/pr41181.c: Likewise.
	* gcc.c-torture/compile/calls.c: Likewise.
	* gcc.c-torture/compile/990617-1.c: Likewise.
	* gcc.c-torture/compile/pr55955.c: Only run the test for
	int32plus targets.
	* gcc.c-torture/compile/limits-externdecl.c: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203055 138bc75d-0d04-0410-961f-82ee72b054a4