* tree-ssa-threadedge.c (thread_across_edge): Do not allow threading
	through joiner blocks with abnormal outgoing edges.

	* tree-ssa-threadupdate.c (thread_block_1): Renamed from thread_block.
	Add parameter JOINERS, to allow/disallow threading through joiner
	blocks.
	(thread_block): New.  Call thread_block_1.
	(mark_threaded_blocks): Remove code to filter out certain cases
	of threading through joiner blocks.
	(thread_through_all_blocks): Document how we can have a dangling
	edge AUX field and clear it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203975 138bc75d-0d04-0410-961f-82ee72b054a4
        PR target/58838
        * config/rs6000/rs6000.md (mulsi3_internal1 and splitter): Add
        TARGET_32BIT final condition.
        (mulsi3_internal2 and splitter): Same.


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

	PR libstdc++/58850
	* include/std/chrono (minutes, hours): Change typedefs to uniformly
	use int64_t.
	* testsuite/20_util/duration/arithmetic/58850.cc: New.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203978 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/58775
	PR tree-optimization/58791
	* tree-ssa-reassoc.c (reassoc_stmt_dominates_stmt_p): New function.
	(insert_stmt_after): Rewritten, don't move the stmt, but really
	insert it.
	(get_stmt_uid_with_default): Remove.
	(build_and_add_sum): Use insert_stmt_after and
	reassoc_stmt_dominates_stmt_p.  Fix up uid if bb contains only
	labels.
	(update_range_test): Set uid on stmts added by
	force_gimple_operand_gsi.  Don't immediately modify statements
	in inter-bb optimization, just update oe->op values.
	(optimize_range_tests): Return bool whether any changed have
	been made.
	(update_ops): New function.
	(struct inter_bb_range_test_entry): New type.
	(maybe_optimize_range_tests): Perform statement changes here.
	(not_dominated_by, appears_later_in_bb, get_def_stmt,
	ensure_ops_are_available): Remove.
	(find_insert_point): Rewritten.
	(rewrite_expr_tree): Remove MOVED argument, add CHANGED argument,
	return LHS of the (new resp. old) stmt.  Don't call
	ensure_ops_are_available, don't reuse SSA_NAMEs, recurse first
	instead of last, move new stmt at the right place.
	(linearize_expr, repropagate_negates): Don't reuse SSA_NAMEs.
	(negate_value): Likewise.  Set uids.
	(break_up_subtract_bb): Initialize uids.
	(reassociate_bb): Adjust rewrite_expr_tree caller.
	(do_reassoc): Don't call renumber_gimple_stmt_uids.

	* gcc.dg/guality/pr58791-1.c: New test.
	* gcc.dg/guality/pr58791-2.c: New test.
	* gcc.dg/guality/pr58791-3.c: New test.
	* gcc.dg/guality/pr58791-4.c: New test.
	* gcc.dg/guality/pr58791-5.c: New test.
	* gcc.c-torture/compile/pr58775.c: New test.
	* gcc.dg/tree-ssa/reassoc-28.c: Don't scan reassoc1 dump.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203979 138bc75d-0d04-0410-961f-82ee72b054a4
2013-10-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/altivec.md (mulv8hi3): Adjust for little endian.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203980 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/bits/hashtable.h (_Hashtable): Force EBO for _Hash_code_base.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203984 138bc75d-0d04-0410-961f-82ee72b054a4
	In C++11 a trivial [cd]tor might not be callable.
	* class.c (user_provided_p): A function deleted on its declation
	in the class is not user-provided.
	(type_build_ctor_call): Also force a ctor call if we
	might have a deleted or private trivial ctor.
	(type_build_dtor_call): New.
	(deduce_noexcept_on_destructors): Remove obsolete code.
	* cp-tree.h: Declare type_build_dtor_call.
	* decl.c (expand_static_init): Make sure trivial dtors are callable.
	(cxx_maybe_build_cleanup): Likewise.
	* except.c (build_throw): Likewise.
	* init.c (build_value_init): Handle trivial but not callable ctors.
	(perform_target_ctor): Make sure trivial dtor is callable.
	(perform_member_init): Likewise.
	(expand_cleanup_for_base): Likewise.
	(build_vec_delete_1): Likewise.
	(build_delete): Likewise.
	(push_base_cleanups): Likewise.
	(build_new_1): Avoid redundant error.
	* method.c (synthesized_method_walk): Can't ever exit early in C++11.
	Always process the subobject destructor.
	* semantics.c (finish_compound_literal): Make sure trivial dtor is
	callable.
	* typeck2.c (split_nonconstant_init): Likewise.

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


	* tree-ssa-loop.h: Remove include files.
	* gengtype.c (open_base_files): Adjust include list for gtype-desc.c.
	* cfgloopmanip.c: Move required includes from tree-ssa-loop.h.
	* graphite-clast-to-gimple.c: Likewise.
	* graphite-scop-detection.c: Likewise.
	* graphite-sese-to-poly.c: Likewise.
	* ipa-inline-analysis.c: Likewise.
	* ipa-pure-const.c: Likewise.
	* loop-init.c: Likewise.
	* passes.c: Likewise.
	* predict.c: Likewise.
	* tree-cfg.c: Likewise.
	* tree-cfgcleanup.c: Likewise.
	* tree-chrec.c: Likewise.
	* tree-data-ref.c: Likewise.
	* tree-loop-distribution.c: Likewise.
	* tree-parloops.c: Likewise.
	* tree-predcom.c: Likewise.
	* tree-scalar-evolution.c: Likewise.
	* tree-ssa-address.c: Likewise.
	* tree-ssa.c: Likewise.
	* tree-ssa-dce.c: Likewise.
	* tree-ssa-loop.c: Likewise.
	* tree-ssa-loop-im.c: Likewise.
	* tree-ssa-loop-ivcanon.c: Likewise.
	* tree-ssa-loop-ivopts.c: Likewise.
	* tree-ssa-loop-manip.c: Likewise.
	* tree-ssa-loop-niter.c: Likewise.
	* tree-ssa-loop-prefetch.c: Likewise.
	* tree-ssa-loop-unswitch.c: Likewise.
	* tree-ssa-reassoc.c: Likewise.
	* tree-vect-data-refs.c: Likewise.
	* tree-vect-loop.c: Likewise.
	* tree-vect-loop-manip.c: Likewise.
	* tree-vectorizer.c: Likewise.
	* tree-vect-stmts.c: Likewise.
	* tree-vrp.c: Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203987 138bc75d-0d04-0410-961f-82ee72b054a4
c-family/
	* c-format.c (gcc_cxxdiag_char_table): Add %X.
cp/
	* error.c (eh_spec_to_string): New.
	(cp_printer): Use it for %X.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203988 138bc75d-0d04-0410-961f-82ee72b054a4
	LWG 2165
	* method.c (defaulted_late_check): Delete on eh-spec mismatch.
	(maybe_explain_implicit_delete): Explain it.

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

Replace further references to global_options in functions
ix86_option_override_internal and ix86_valid_target_attribute_tree
in config/i386/i386.c.

	PR target/57756
	* config/i386/i386.c (ix86_option_override_internal):
	Change TARGET_SSE2 to TARGET_SSE2_P (opts->...)
	(ix86_valid_target_attribute_tree):
	Change TARGET_64BIT to TARGET_64BIT_P (opts->...)
	Change TARGET_SSE to TARGET_SSE_P (opts->...)



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203991 138bc75d-0d04-0410-961f-82ee72b054a4
Fix up ChangeLog entries (name, e-mail, formatting, otherwise).


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203992 138bc75d-0d04-0410-961f-82ee72b054a4
	* testsuite/test-expandargv.c: Include unistd.h.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203993 138bc75d-0d04-0410-961f-82ee72b054a4
	* gcc.target/powerpc/direct-move.h: Fix header for executable tests.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203994 138bc75d-0d04-0410-961f-82ee72b054a4
2013-10-23  Chris Jefferson  <chris@bubblescope.net>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/util/testsuite_containergen.h: New.
	* testsuite/util/testsuite_iterators.h (test_container<>::val): Add.
	* testsuite/25_algorithms/nth_element/random_test.cc: New, use the
	above.
	* testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
	* testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
	* testsuite/25_algorithms/sort/random_test.cc: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203995 138bc75d-0d04-0410-961f-82ee72b054a4
compiler: use builtin runtime calls for integer to string and string to array conversions.


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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204000 138bc75d-0d04-0410-961f-82ee72b054a4
gengtype: parse base classes for some GTY-marked types

2013-10-23  David Malcolm  <dmalcolm@redhat.com>

	* gengtype-parse.c (require_without_advance): New.
	(type): For GTY-marked types that are not GTY((user)), parse any
	base classes, requiring them to be single-inheritance, and not
	be templates.  For non-GTY-marked types and GTY((user)),
	continue to skip over any C++ inheritance specification.
	* gengtype-state.c (state_writer::write_state_struct_type):
	Write base class of type (if any).
	(read_state_struct_type): Read base class of type (if any).
	* gengtype.c (new_structure): Add a "base_class" parameter.
	(create_optional_field_): Update for new parameter to
	new_structure.
	(adjust_field_rtx_def): Likewise.
	(adjust_field_tree_exp): Likewise.
	* gengtype.h (struct type): Add "base_class" field to the s
	union field.
	(new_structure): Add "base" parameter.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204003 138bc75d-0d04-0410-961f-82ee72b054a4
Fix Ada bootstrap with Solaris /bin/ksh

	* gcc-interface/Make-lang.in (ADA_DEPS): Fix quoting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204005 138bc75d-0d04-0410-961f-82ee72b054a4
2013-10-24  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* configure.ac (ZW_PROG_COMPILER_DEPENDENCIES): Use CXX instead of CC.
	* Makefile.in (CXXDEPMODE): Assign and change users.
	(CCDEPMODE): Delete.
	* configure: Regenerate.


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