PR tree-optimization/58165
	* tree-call-cdce.c (shrink_wrap_one_built_in_call): If
	bi_call must be the last stmt in a bb, don't split_block, instead
	use fallthru edge from it and give up if there is none.
	Release conds vector when returning early.

	* g++.dg/opt/pr58165.C: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201780 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/58164
	* gimple.c (walk_stmt_load_store_addr_ops): For visit_addr
	walk gimple_goto_dest of GIMPLE_GOTO.

	* gcc.c-torture/compile/pr58164.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201782 138bc75d-0d04-0410-961f-82ee72b054a4
2013-08-16  Tim Shen  <timshen91@gmail.com>

	* include/bits/regex.h (regex_traits<>::transform_primary):
	Avoid past-the-end dereferences.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201783 138bc75d-0d04-0410-961f-82ee72b054a4
	* sched-vis.c (rtl_slim_pp_initialized): Remove.
	(rtl_slim_pp): Likewise.
	(init_rtl_slim_pretty_print): Likewise.
	(dump_value_slim):  Don't call it.  Use local pretty printer.
	(dump_insn_slim): Likewise.
	(dump_rtl_slim): Likewise.
	(str_pattern_slim): Likewise.
	* tree-mudflap.c (mf_varname_tree): Use local pretty printer.
	Simplify.



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

	* gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new
	arugment expected_type.
	(gimple_fold_call): Use it.
	* gimple.h (gimple_extract_devirt_binfo_from_cst): Update prototype.
	* ipa-cp.c (ipa_get_indirect_edge_target_1): Update.
	* ipa-prop.c (ipa_analyze_virtual_call_uses): Use
	obj_type_ref_class.
	(try_make_edge_direct_virtual_call): Likewise.
	* tree.c (obj_type_ref_class): New.
	* tree.h (obj_type_ref_class): Use it.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201789 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/58105
	* config/i386/i386.c (make_resolver_func): Set DECL_UNINLINABLE.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201790 138bc75d-0d04-0410-961f-82ee72b054a4
Fix bad interaction between GTY((user)) and incomplete declarations

gcc/
	* gengtype.c (create_user_defined_type): Ensure that the kind
	is set to TYPE_USER_STRUCT, fixing a bug seen when an incomplete
	declaration is seen before the GTY((user)) marking.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201791 138bc75d-0d04-0410-961f-82ee72b054a4
2013-08-14  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/58160
	* config/rs6000/predicates.md (fusion_gpr_mem_load): Allow the
	memory rtx to contain ZERO_EXTEND and SIGN_EXTEND.

	* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): Pass operands
	array instead of each individual operand as a separate argument.
	(emit_fusion_gpr_load): Likewise.
	(expand_fusion_gpr_load): Add new function declaration.

	* config/rs6000/rs6000.c (fusion_gpr_load_p): Change the calling
	signature to have the operands passed as an array, instead of as
	separate arguments.  Allow ZERO_EXTEND to be in the memory
	address, and also SIGN_EXTEND if -mpower8-fusion-sign.  Do not
	depend on the register live/dead flags when peepholes are run.
	(expand_fusion_gpr_load): New function to be called from the
	peephole2 pass, to change the register that addis sets to be the
	target register.
	(emit_fusion_gpr_load): Change the calling signature to have the
	operands passed as an array, instead of as separate arguments.
	Allow ZERO_EXTEND to be in the memory address, and also
	SIGN_EXTEND if -mpower8-fusion-sign.

	* config/rs6000/rs6000.md (UNSPEC_FUSION_GPR): Delete unused
	unspec enumeration.
	(power8 fusion peephole/peephole2): Rework the fusion peepholes to
	adjust the register addis loads up in the peephole2 pass.  Do not
	depend on the register live/dead state when the peephole pass is
	done.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201792 138bc75d-0d04-0410-961f-82ee72b054a4
Support "gcc" namespace in gengtype

gcc/
	* gengtype.c (type_for_name): Add special-case support for
	locating types within the "gcc::" namespace.
	(open_base_files): Emit a "using namespace gcc" directive.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201800 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/mips/mips16.S (CE_STARTFN, CE_ENDFN): New macros.
	(RET_FUNCTION): Use them in place of STARTFN and ENDFN.
	(CALL_STUB_NO_RET): Likewise.
	(CALL_STUB_RET): Likewise.
	* config/mips/libgcc-mips16.ver: Remove __mips16_call_stub and
	__mips16_ret call/return stub symbols.
	* config.host <mips*-*-linux>: For non-R5900 add t-slibgcc-libgcc
	to tmake_file.


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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201811 138bc75d-0d04-0410-961f-82ee72b054a4
        * config/rs6000/rs6000.md (rs6000_get_timebase_ppc32): Add length
        attribute.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201812 138bc75d-0d04-0410-961f-82ee72b054a4
backref
Fix empty grouping.
Complete _Scanner.