PR ipa/61998 Fix crash -Wsuggest-final-types crash

-Wsuggest-final-types crashes when used on mininal testcases.
Fix by bailing out early when odr_types_ptr is NULL in ipa_devirt()

2014-09-19  Markus Trippelsdorf  <markus@trippelsdorf.de>

        PR ipa/61998
        * ipa-devirt.c (ipa_devirt): Bail out if odr_types_ptr is NULL.

2014-09-19  Markus Trippelsdorf  <markus@trippelsdorf.de>

        PR ipa/61998
        * g++.dg/warn/Wsuggest-final-2.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215392 138bc75d-0d04-0410-961f-82ee72b054a4
[Patch sh] Fixup use of constraints in define_split

	* config/sh/sh.md: Fix use of constraints in define_split.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215393 138bc75d-0d04-0410-961f-82ee72b054a4
	* simple-object-elf.c (simple_object_elf_write_ehdr): Correctly
	handle objects with more than SHN_LORESERVE sections.
	(simple_object_elf_write_shdr): Add sh_link parameter.
	(simple_object_elf_write_to_file): Correctly handle objects with
	more than SHN_LORESERVE sections.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215394 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/rs6000/rs6000.c (rs6000_special_adjust_field_align_p):
	Update GCC version name to GCC 5.
	(rs6000_function_arg_boundary): Likewise.
	(rs6000_function_arg): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215395 138bc75d-0d04-0410-961f-82ee72b054a4
	* dwarf2out.c (decl_ultimate_origin): Update comment.
	* tree.c (block_ultimate_origin): Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215396 138bc75d-0d04-0410-961f-82ee72b054a4
Re: [Patch] Teach genrecog/genoutput that scratch registers require write constraint modifiers

gcc/

	* genrecog.c (validate_pattern): Allow empty constraints in
	a match_scratch.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215397 138bc75d-0d04-0410-961f-82ee72b054a4
        * cfgrtl.c ira.c ira-color.c ira-conflicts ira-lives.c: Update
        comments and fix spacing to conform to coding style.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215398 138bc75d-0d04-0410-961f-82ee72b054a4
2014-09-19  Segher Boessenkool  <segher@kernel.crashing.org>

	* recog.c (scratch_operand): Do not simply allow all hard registers:
	only allow those that are allocatable.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215399 138bc75d-0d04-0410-961f-82ee72b054a4
2014-09-19  Segher Boessenkool  <segher@kernel.crashing.org>

	* dg-extract-results.py (Prog.result_re): Include options in test name.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215400 138bc75d-0d04-0410-961f-82ee72b054a4
Fix mcount test cases to only run on supported targets

       * gcc.dg/pg-override.c: Only run on x86 Linux.
       * gcc.dg/pg.c: Dito.
       * gcc.target/i386/fentry-override.c: Exclude for PIC.
       * gcc.target/i386/fentry.c: Dito.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215401 138bc75d-0d04-0410-961f-82ee72b054a4
compiler: Pass constant arguments directly to thunk functions.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215402 138bc75d-0d04-0410-961f-82ee72b054a4
	PR lto/63286
	* tree.c (need_assembler_name_p): Do not mangle variadic types.


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

	* config/rs6000/predicates.md (fusion_gpr_mem_load): Move testing
	for base_reg_operand to be common between LO_SUM and PLUS.
	(fusion_gpr_mem_combo): New predicate to match a fused address
	that combines the addis and memory offset address.

	* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): Change
	calling signature.
	(emit_fusion_gpr_load): Likewise.

	* config/rs6000/rs6000.c (fusion_gpr_load_p): Change calling
	signature to pass each argument separately, rather than
	using an operands array.  Rewrite the insns found by peephole2 to
	be a single insn, rather than hoping the insns will still be
	together when the peephole pass is done.  Drop being called via a
	normal peephole.
	(emit_fusion_gpr_load): Change calling signature to be called from
	the fusion_gpr_load_<mode> insns with a combined memory address
	instead of the peephole pass passing the addis and offset
	separately.

	* config/rs6000/rs6000.md (UNSPEC_FUSION_GPR): New unspec for GPR
	fusion.
	(power8 fusion peephole): Drop support for doing power8 via a
	normal peephole that was created by the peephole2 pass.
	(power8 fusion peephole2): Create a new insn with the fused
	address, so that the fused operation is kept together after
	register allocation is done.
	(fusion_gpr_load_<mode>): Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215404 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/61825
	* c-family/c-common.c (handle_alias_ifunc_attribute): Check
	that visibility change is possible
	(handle_weakref_attribute): Likewise.
	* cgraph.h (symtab_node): Add method get_create and
	field refuse_visibility_changes.
	(symtab_node::get_create): New method.
	* fold-const.c (tree_single_nonzero_warnv_p): Use get_create.
	* varasm.c (mark_weak): Verify that visibility change is
	possible.

	* gcc.dg/tree-ssa/nonzero-1.c: Require error to be output.


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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215412 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/61465
	* call.c (convert_like_real) [ck_identity]: Call mark_rvalue_use
	after pulling out an element from a CONSTRUCTOR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215413 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/61392
	* mangle.c (write_expression): Use unresolved-name mangling for
	DR850 case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215414 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/63255
	* ipa.c (symbol_table::remove_unreachable_nodes): Fix ordering
	issue in setting body_removed flag.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215415 138bc75d-0d04-0410-961f-82ee72b054a4
	* diagnostic.c (warning_n): New function.
	* diagnostic-core.h (warning_n): Declare.
	* ipa-devirt.c (ipa_devirt): Handle singulars correctly;
	output dynamic counts when available.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215416 138bc75d-0d04-0410-961f-82ee72b054a4
	* ipa-visibility.c (varpool_node::externally_visible_p): Do not
	privatize dynamic TLS variables.


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