2014-12-14  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/63674
	* resolve.c (pure_function): Treat procedure-pointer components.
	(check_pure_function): New function.
	(resolve_function): Use it.
	(pure_subroutine): Return a bool to indicate success and modify
	arguments.
	(resolve_generic_s0,resolve_specific_s0,resolve_unknown_s): Use return
	value of 'pure_subroutine'.
	(resolve_ppc_call): Call 'pure_subroutine'.
	(resolve_expr_ppc): Call 'check_pure_function'.


2014-12-14  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/63674
	* gfortran.dg/proc_ptr_comp_39.f90: New.
	* gfortran.dg/pure_dummy_length_1.f90: Modified error message.
	* gfortran.dg/stfunc_6.f90: Ditto.
	* gfortran.dg/typebound_operator_4.f90: Ditto.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218717 138bc75d-0d04-0410-961f-82ee72b054a4
Pass unpromoted argument to promote_function_mode

This patch updates setup_incoming_promotions in combine.c to match what
is actually passed in assign_parm_setup_reg in function.c.

gcc/

	PR rtl-optimization/64037
	* combine.c (setup_incoming_promotions): Pass the argument
	before any promotions happen to promote_function_mode.

gcc/testsuite/

	PR rtl-optimization/64037
	* g++.dg/pr64037.C: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218720 138bc75d-0d04-0410-961f-82ee72b054a4
compiler: Fix crash when tracked field used in global initializer.


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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218725 138bc75d-0d04-0410-961f-82ee72b054a4
	* cgraphunit.c (analyze_functions): Do not analyze extern inline
	funtions when not optimizing; skip comdat locals.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218726 138bc75d-0d04-0410-961f-82ee72b054a4
	PR lto/64043
	* tree.c (virtual_method_call_p): Return false when OTR type has
	no BINFO.
	* g++.dg/lto/pr64043_0.C: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218727 138bc75d-0d04-0410-961f-82ee72b054a4
	* cgraphunit.c (analyze_functions): Always analyze targets of aliases.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218728 138bc75d-0d04-0410-961f-82ee72b054a4
	PR ipa/61558
	* symtab.c (symbol_table::insert_to_assembler_name_hash
	symbol_table::unlink_from_assembler_name_hash): Do not ICE when	
	DECL_ASSEMBLER_NAME is NULL.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218729 138bc75d-0d04-0410-961f-82ee72b054a4
	* ipa.c (process_references): Fix conditoinal on flag_optimize


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218730 138bc75d-0d04-0410-961f-82ee72b054a4
	PR ipa/61602
	* gcc.dg/torture/pr61602.c: New testcase.

	* cgraph.h (ipa_discover_readonly_nonaddressable_vars): Return bool.
	* ipa.c (set_writeonly_bit): Track if reference was removed.
	(ipa_discover_readonly_nonaddressable_vars): Return true if any
	references was removed.
	* ipa-reference.c (propagate): Return TODO_remove_functions if
	reference was removed.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218731 138bc75d-0d04-0410-961f-82ee72b054a4
	* server.c (server_setup): Check return value of
	getcwd and in case of error set buff[0] to 0.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218732 138bc75d-0d04-0410-961f-82ee72b054a4
2014-12-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/64284
	* tree-ssa-threadupdate.c (duplicate_seme_region): Mark
	the loop for removal if we copied the loop header.

	* gcc.dg/torture/pr64284.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218733 138bc75d-0d04-0410-961f-82ee72b054a4
	PR sanitizer/64265
	* tsan.c (instrument_func_entry): Insert __tsan_func_entry
	call on edge from entry block to single succ instead
	of after labels of single succ of entry block.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218734 138bc75d-0d04-0410-961f-82ee72b054a4
[AARCH64]Fix CLZ_DEFINED_AT_ZERO and CTZ_DEFINED_AT_ZERO definition.

gcc/

2014-12-15  Renlin Li  <renlin.li@arm.com>

	* config/aarch64/aarch64.h (CLZ_DEFINED_VALUE_AT_ZERO): Return 2.
	(CTZ_DEFINED_VALUE_AT_ZERO): Update to support more modes.




git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218737 138bc75d-0d04-0410-961f-82ee72b054a4
2014-12-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/63674
	* resolve.c (check_pure_function): Rewording in error message.


2014-12-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/63674
	* gfortran.dg/forall_5.f90: Modified error message.
	* gfortran.dg/proc_ptr_comp_39.f90: Ditto.
	* gfortran.dg/pure_dummy_length_1.f90: Ditto.
	* gfortran.dg/stfunc_6.f90: Ditto.
	* gfortran.dg/typebound_operator_4.f90: Ditto.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218738 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/63551
	* gcc.dg/ipa/pr63551.c (fn2): Use 4294967286U instead of
	4294967286 to avoid warnings.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218740 138bc75d-0d04-0410-961f-82ee72b054a4
2014-12-15  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp1y/pr63996.C: Fix.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218742 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/64210
	* gcc.target/i386/avx512f-broadcast-gpr-1.c: Use %(?:e|r\[0-9\]+d)
	instead of %e in regexps trying to match 32-bit GPR.
	* gcc.target/i386/avx512f-vpbroadcastd-1.c: Likewise.
	* gcc.target/i386/avx512vl-vpbroadcastd-1.c: Likewise.
	* gcc.target/i386/avx512vl-vmovdqa64-1.c: Restrict some scan-assembler-times
	lines to nonpic targets only.  Fix up \[^\n^x^y\] to \[^\nxy\].


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

	* configure.ac (--enable-as-accelerator-for): Don't set
	ENABLE_AS_ACCELERATOR_FOR.  Update all users.
	* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218744 138bc75d-0d04-0410-961f-82ee72b054a4
	PR middle-end/64292
	* fold-const.c (negate_expr_p): Add INTEGRAL_TYPE_P check.


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