2014-07-02  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray/get_array.f90: Add missing SYNC ALL.
        * gfortran.dg/coarray/send_array.f90: Ditto.
        * gfortran.dg/coarray/sendget_array.f90: Ditto.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212220 138bc75d-0d04-0410-961f-82ee72b054a4
	* ipa-utils.h (method_class_type, vtable_pointer_value_to_binfo,
	vtable_pointer_value_to_vtable): Constify.
	(contains_polymorphic_type_p): Declare.
	* ipa-devirt.c (method_class_type, vtable_pointer_value_to_binfo,
	vtable_pointer_value_to_vtable): Constify.
	(contains_polymorphic_type_p): New predicate.
	* ipa-prop.c (ipa_set_jf_known_type): Allow types containing
	polymorphic types.
	(ipa_set_ancestor_jf): Likewise.
	(detect_type_change): Return false in easy cases.
	(compute_complex_assign_jump_func): Require type to contain
	polymorphic type.
	(compute_known_type_jump_func): Likewise.


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

	* pt.c (convert_template_argument): Use inform instead of error in
	three places.

/testsuite
2014-07-02  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/variadic-ex10.C: Adjust for inform instead of error.
	* g++.dg/cpp0x/variadic-ex14.C: Likewise.
	* g++.dg/parse/error11.C: Likewise.
	* g++.old-deja/g++.brendan/template17.C: Likewise.


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

	* configure.host (ieee_flags): Add -mieee for alpha*.

	* config/fpu-glibc.h (support_fpu_rounding_mode): Correctly handle
	GFC_FPE_UPWARD, GFC_FPE_DOWNWARD and GFC_FPE_TOWARDZERO.
	* config/fpu-aix.h (support_fpu_rounding_mode): Ditto.

testsuite/ChangeLog:

	* gfortran.dg/ieee/ieee_1.F90 (dg-additional-options): Remove -O0.
	* gfortran.dg/ieee/ieee_rounding_1.f90 (dg-additional-options): Add.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212224 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Removed unused variable i in aarch64_expand_vec_perm

	* config/aarch64/aarch64.c (aarch64_expand_vec_perm): Delete unused
	variable i.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212225 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/fpu-glibc.h: Fix comment about FE_DENORMAL.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212226 138bc75d-0d04-0410-961f-82ee72b054a4
	* decl.c (variable_decl): Reject old style initialization
	for derived type components.

	* gfortran.dg/oldstyle_5.f: New test.


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

* mode-switching.c (struct bb_info): Add mode_out, mode_in caches.
(make_preds_opaque): Delete.
(clear_mode_bit, mode_bit_p, set_mode_bit): New macros.
(commit_mode_sets): New function.
(optimize_mode_switching): Handle current_mode to mode_switching_emit.
Process all modes at once.
* basic-block.h (pre_edge_lcm_avs): Declare.
* lcm.c (pre_edge_lcm_avs): Renamed from pre_edge_lcm.
Call clear_aux_for_edges. Fix comments.
(pre_edge_lcm): New wrapper function to call pre_edge_lcm_avs.
(pre_edge_rev_lcm): Idem.
* config/epiphany/epiphany.c (emit_set_fp_mode): Add prev_mode parameter.
* config/epiphany/epiphany-protos.h (emit_set_fp_mode): Idem.
* config/epiphany/resolve-sw-modes.c (pass_resolve_sw_modes::execute): Idem.
* config/i386/i386.c (x96_emit_mode_set): Idem.
* config/sh/sh.c (sh_emit_mode_set): Likewise. Handle PR toggle.
* config/sh/sh.md (toggle_pr): 	Defined if TARGET_FPU_SINGLE.
(fpscr_toggle) Disallow from delay slot.
* target.def (emit_mode_set): Add prev_mode parameter.
* doc/tm.texi: Regenerate.



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

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

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

runtime: Don't free tiny blocks in map deletion.

The memory allocator now has a special case for tiny blocks
(smaller than 16 bytes) and they can not be explicitly freed.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212233 138bc75d-0d04-0410-961f-82ee72b054a4
	* c-decl.c (duplicate_decls): CLear DECL_STRUCT_FUNCTION before
	releasing symbol.

	* gcc.c-torture/compile/section.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212234 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/fpu-sysv.h (void set_fpu): Remove stalled comment.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212235 138bc75d-0d04-0410-961f-82ee72b054a4
Only transform rotate to rotatert and v.v. if target has both

Many targets do not have both rotate and rotatert.  Of the 47 targets
in the tree, 17 have both, 9 have only rotate, 2 have only rotatert, and
19 have neither (this is based on "grep -wil" so it can be slightly off).

rs6000 has only rotate, and mips has only rotatert.  For such targets
simplifying rotate to rotatert and vice versa is not simplifying things
at all.  rs6000 has already way too many rotate patterns (some days it
seems like two thousand, but it is somewhat less in reality still); I
would prefer not to double that again.

So, this patch makes genrecog define HAVE_rotate and HAVE_rotatert if
those RTL codes are mentioned anywhere in the machine description, and
then does the transformation in simplify-rtx.c only if both these flags
are set.


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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212253 138bc75d-0d04-0410-961f-82ee72b054a4
ChangeLog:
2014-07-03  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

	* loop-invariant.c (struct invariant): Add a new member: eqno;
	(find_identical_invariants): Update eqno;
	(create_new_invariant): Init eqno;
	(get_inv_cost): Compute comp_cost with eqno;


testsuite/ChangeLog:
2014-07-03  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

	* gcc.target/arm/identical-invariants.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212256 138bc75d-0d04-0410-961f-82ee72b054a4
2014-07-03  Tobias Burnus  <burnus@net-b.de>

        * scanner.c (skip_free_comments): Fix indentation.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212257 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/rs6000/rs6000.c (rs6000_adjust_atomic_subword): Use
	BYTES_BIG_ENDIAN rather than WORDS_BIG_ENDIAN to check for byte
	endianness.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212258 138bc75d-0d04-0410-961f-82ee72b054a4
	* doc/invoke.texi (-fsanitize=bounds): Tweak wording.
	(-fsanitize=float-divide-by-zero): Move to the table with
	-fsanitize=undefined suboptions.
	(-fsanitize=float-cast-overflow): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212260 138bc75d-0d04-0410-961f-82ee72b054a4
	* gfortran.dg/ieee/ieee_1.F90: Mark variables as volatile to
	avoid optimization.


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