PR c++/61242
	* call.c (build_aggr_conv): Ignore passed in flags.
	(build_array_conv, build_complex_conv): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211024 138bc75d-0d04-0410-961f-82ee72b054a4
	* pt.c (tsubst) [ARRAY_TYPE]: Check for array of array of unknown
	bound.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211025 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/47202
gcc/cp/
	* decl.c (cxx_comdat_group): Return a decl.
	* optimize.c (cdtor_comdat_group): Get its DECL_ASSEMBLER_NAME.
gcc/
	* cgraph.h (symtab_node::get_comdat_group_id): New.
	* cgraphunit.c (analyze_functions): Call it.
	* symtab.c (dump_symtab_node): Likewise.
	* tree.c (decl_comdat_group_id): New.
	* tree.h: Declare it.
	* lto-streamer-out.c (write_symbol): Use it.
	* trans-mem.c (ipa_tm_create_version_alias): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211026 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* doc/md.texi: Document the restrictions on the "enabled" attribute.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211030 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* doc/md.texi: Document that the % constraint character must
	be at the beginning of the string.
	* genoutput.c (validate_insn_alternatives): Check that '=',
	'+' and '%' only appear at the beginning of a constraint.
	* ira.c (commutative_constraint_p): Delete.
	(ira_get_dup_out_num): Expect the '%' commutativity marker to be
	at the start of the string.
	* config/alpha/alpha.md (*movmemdi_1, *clrmemdi_1): Remove
	duplicate '='s.
	* config/arm/neon.md (bicdi3_neon): Likewise.
	* config/iq2000/iq2000.md (addsi3_internal, subsi3_internal, sgt_si)
	(slt_si, sltu_si): Likewise.
	* config/vax/vax.md (sbcdi3): Likewise.
	* config/h8300/h8300.md (*cmpstz): Remove duplicate '+'.
	* config/arc/arc.md (mulsi_600, mulsidi_600, umulsidi_600)
	(mul64): Move '%' to beginning of constraint.
	* config/arm/arm.md (*xordi3_insn): Likewise.
	* config/nds32/nds32.md (add<mode>3, mulsi3, andsi3, iorsi3)
	(xorsi3): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211031 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-28  Tom de Vries  <tom@codesourcery.com>

	Revert:
	2014-05-28  Tom de Vries  <tom@codesourcery.com>

	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
	* lra.c (initialize_lra_reg_info_element): Add init of
	actual_call_used_reg_set field.
	(lra): Call lra_create_live_ranges before lra_inheritance for
	-fuse-caller-save.
	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
	-fuse-caller-save.
	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
	instead of call_used_reg_set for -fuse-caller-save.
	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211033 138bc75d-0d04-0410-961f-82ee72b054a4
Add myself to MAINTAINERS.

2014-05-28  Pedro Alves  <palves@redhat.com>

	* MAINTAINERS (Write After Approval): Add myself.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211034 138bc75d-0d04-0410-961f-82ee72b054a4
Fix demangler testsuite crashes with CP_DEMANGLE_DEBUG defined

Running the demangler's testsuite with CP_DEMANGLE_DEBUG defined
crashes, with:

 Program received signal SIGSEGV, Segmentation fault.
 0x000000000040a8c3 in d_dump (dc=0x1, indent=12) at ../../src/libiberty/cp-demangle.c:567
 567       switch (dc->type)

 (gdb) bt 3
 #0  0x000000000040a8c3 in d_dump (dc=0x1, indent=12) at ../../src/libiberty/cp-demangle.c:567
 #1  0x000000000040ae47 in d_dump (dc=0x7fffffffd098, indent=10) at ../../src/libiberty/cp-demangle.c:787
 #2  0x000000000040ae47 in d_dump (dc=0x7fffffffd0c8, indent=8) at ../../src/libiberty/cp-demangle.c:787

Note dc=0x1, which is obviously a bogus pointer.  This is the end of
d_dump recursing for a component type that that doesn't actually have
subtrees:

 787       d_dump (d_left (dc), indent + 2);
 788       d_dump (d_right (dc), indent + 2);

This fixes the two cases the testsuite currently trips on.

libiberty/
2014-05-28  Pedro Alves  <palves@redhat.com>

	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_FUNCTION_PARAM
	and DEMANGLE_COMPONENT_NUMBER.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211035 138bc75d-0d04-0410-961f-82ee72b054a4
runtime: fix misc gcc-isms and undefined behavior

This includes the use of __complex and __builtin_ functions where
unprefixed entities would suffice, and the use of a union for
bit-casting between types.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211036 138bc75d-0d04-0410-961f-82ee72b054a4
runtime: disable split stacks for runtime_printf function under Clang

LLVM's code generator does not currently support split stacks for vararg
functions, so we disable split stacks for the only function that uses this
feature under Clang. This appears to be OK as long as:
- this function only calls non-inlined, internal-linkage (hence no dynamic
  loader) functions compiled with split stacks (i.e. go_vprintf), which can
  allocate more stack space as required;
- this function itself does not occupy more than BACKOFF bytes of stack space
  (see libgcc/config/i386/morestack.S).
These conditions are currently known to be satisfied by Clang on x86-32 and
x86-64. Note that signal handlers receive slightly less stack space than they
would normally do if they happen to be called while this function is being
run. If this turns out to be a problem we could consider increasing BACKOFF.


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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211041 138bc75d-0d04-0410-961f-82ee72b054a4
	* varasm.c (get_variable_section): Walk aliases.
	(place_block_symbol): Walk aliases.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211045 138bc75d-0d04-0410-961f-82ee72b054a4
Fix bootstrap on powerpc64le-linux-gnu

2014-05-29  Tom de Vries  <tom@codesourcery.com>

	* final.c (collect_fn_hard_reg_usage): Guard variable declaration
	with #ifdef STACK_REGS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211047 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/testsuite/
        * gcc.dg/vect/pr52252-ld.c: Fix target and options for the test.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211048 138bc75d-0d04-0410-961f-82ee72b054a4
-fuse-caller-save - Enable for MIPS

2014-05-29  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* config/mips/mips.h (POST_CALL_TMP_REG): Define.
	* config/mips/mips.c (mips_emit_call_insn): Add POST_CALL_TMP_REG
	clobber.
	(mips_split_call): Use POST_CALL_TMP_REG.
	(TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS): Redefine to true.

	* gcc.target/mips/mips.exp: Add use-caller-save to -ffoo/-fno-foo
	options.
	* gcc.target/mips/fuse-caller-save.h: New include file.
	* gcc.target/mips/fuse-caller-save.c: New test.
	* gcc.target/mips/fuse-caller-save-mips16.c: Same.
	* gcc.target/mips/fuse-caller-save-micromips.c: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211049 138bc75d-0d04-0410-961f-82ee72b054a4
Merge remote-tracking branch 'parent/master' into ipa-sem-equality-lto
Merge fixed.
Introduced cgraph_make_wrapper function.

Reduced API changes.
IPA sem equality: using API clean up.
IPA sem equality renamed to ICF.