2013-04-04  François Dumont  <fdumont@gcc.gnu.org>

	* include/std/functional (_Derives_from_unary_function): Remove.
	(_Derives_from_binary_function): Remove.
	* include/std/type_traits (__sfinae_types): Remove.
	(__is_assignable_helper): Adapt.
	(__is_convertible_helper): Adapt.
	(_GLIBCXX_HAS_NESTED_TYPE): Adapt.
	Remove several explicit instantiations of integral_constant.
	* testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
	Adapt dg-error line number.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.
	* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
	* testsuite/20_util/bind/ref_neg.cc: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197551 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/bits/forward_list.h: Only include required headers.
	(forward_list::reference): Define directly, not using __alloc_traits.
	(forward_list::const_reference): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197552 138bc75d-0d04-0410-961f-82ee72b054a4
	* c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197553 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/Makefile.am: Add ext/aligned_buffer.h
	* include/Makefile.in: Regenerate.
	* include/ext/aligned_buffer.h: New.
	* include/std/future (_Result): Use __aligned_buffer.
	* include/bits/forward_list.h (_Fwd_list_node): Likewise.
	* include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
	number.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197554 138bc75d-0d04-0410-961f-82ee72b054a4
	* parser.c (cp_parser_std_attribute): Treat [[noreturn]] like GNU
	noreturn attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197555 138bc75d-0d04-0410-961f-82ee72b054a4
	* update_web_docs_libstdcxx_svn: No longer ignore all output from
	the actual copy process.
	Check the exit code of the actual copy process; diagnose problems.


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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197562 138bc75d-0d04-0410-961f-82ee72b054a4
	PR rtl-optimization/48182
	* params.def (PARAM_MIN_CROSSJUMP_INSNS): Increase the minimum
	value to 1.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197564 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-08  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.c (s390_expand_insv): Only accept insertions
	within mode size.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197566 138bc75d-0d04-0410-961f-82ee72b054a4
	* tree-loop-distribution.c (const_with_all_bytes_same): New function.
	(generate_memset_builtin): Only handle integer_all_onesp as -1 val if
	TYPE_PRECISION is equal to mode bitsize.  Use const_with_all_bytes_same
	if possible to compute val.
	(classify_partition): Verify CONSTRUCTOR doesn't have any elts.
	For QImode integers don't require anything about precision.  Use
	const_with_all_bytes_same to find out if the constant doesn't have
	repeated bytes in it.

	* gcc.dg/pr56837.c: New test.
	* gcc.dg/tree-ssa/ldist-19.c: Don't check for
	"generated memset minus one".


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

	* g++.dg/vect/slp-pr56812.cc: Adjust.


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

	* gfortran.dg/vect/fast-math-pr37021.f90: Adjust.


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

	* alias.c (find_base_term): Fix thinko in previous change.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197572 138bc75d-0d04-0410-961f-82ee72b054a4
Fix PR target/54338 - Include IWMMXT_GR_REGS in ALL_REGS.

For Xinyu Qi.

2013-04-08  Xinyu Qi  <xyqi@marvell.com>

 	PR target/54338
 	* config/arm/arm.h (REG_CLASS_CONTENTS): Include IWMMXT_GR_REGS
	in ALL_REGS.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197576 138bc75d-0d04-0410-961f-82ee72b054a4
        * config/epiphany/epiphany.h (struct GTY (()) machine_function):
        Add member lr_slot_known.
        * config/epiphany/epiphany.md (reload_insi_ra): Compute lr_slot_offs
        if necessary.
        * config/epiphany/epiphany.c (epiphany_compute_frame_size):
        Remove code that sets lr_slot_offset according to what a previous
        version of epiphany_emit_save_restore used to do.
        (epiphany_emit_save_restore): When doing an lr save or restore,
        set/verify lr_slot_known and lr_slot_offset.


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

	* gimple-pretty-print.c (debug_gimple_stmt): Do not print
	extra newline.
	* tree-vect-loop.c (vect_determine_vectorization_factor): Dump
	determined vector type.
	(vect_analyze_data_refs): Likewise.
	(vect_get_new_vect_var): Adjust.
	(vect_create_destination_var): Preserve SSA name versions.
	* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): Do
	not dump anything here.

	* gfortran.dg/vect/fast-math-mgrid-resid.f: Adjust.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197578 138bc75d-0d04-0410-961f-82ee72b054a4
        * gimple.c (canonicalize_cond_expr_cond): Rewrite x ^ y into
        x != y.

        * gcc.dg/tree-ssa/forwprop-25.c: New test

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197579 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/34949
	PR c++/50243
	* tree-eh.c (optimize_clobbers): Only remove clobbers if bb doesn't
	contain anything but clobbers, at most one __builtin_stack_restore,
	optionally debug stmts and final resx, and if it has at least one
	incoming EH edge.  Don't check for SSA_NAME on LHS of a clobber.
	(sink_clobbers): Don't check for SSA_NAME on LHS of a clobber.
	Instead of moving clobbers with MEM_REF LHS with SSA_NAME address
	which isn't defaut definition, remove them.
	(unsplit_eh, cleanup_empty_eh): Use single_{pred,succ}_{p,edge}
	instead of EDGE_COUNT comparisons or EDGE_{PRED,SUCC}.
	* tree-ssa-ccp.c (execute_fold_all_builtins): Remove clobbers
	with MEM_REF LHS with SSA_NAME address.

	* g++.dg/opt/vt3.C: New test.
	* g++.dg/opt/vt4.C: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197580 138bc75d-0d04-0410-961f-82ee72b054a4
	* gcc.c-torture/execute/pr56837.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197582 138bc75d-0d04-0410-961f-82ee72b054a4
        * config/epiphany/epiphany.md (GPR_1): New constant.
        (define_expand "mov<mode>cc): FAIL if gen_compare_reg returned 0.
        * config/epiphany/epiphany.c (gen_compare_reg):
        For flag_finite_math_only, avoid swapping operands when r0 and/or r1
        is already in place.
        Use GPR_0 / GPR_1 instead of 0/1 for r0/r1 register numbers.
        Don't require being called during rtl expansion; If y operlaps r0,
        return 0.
        (epiphany_compute_frame_size, epiphany_expand_prologue): Use GPR_1.
        (epiphany_expand_epilogue): Likewise.


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