2013-04-03  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/56284
	PR fortran/40881
	* decl.c (gfc_match_formal_arglist): Warn about alternate-return
	arguments.
	* interface.c (check_dummy_characteristics): Return if symbols are NULL.

2013-04-03  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/56284
	PR fortran/40881
	* gfortran.dg/altreturn_8.f90: New.
	* gfortran.dg/altreturn_2.f90: Add -std=legacy.
	* gfortran.dg/intrinsic_actual_3.f90: Ditto.
	* gfortran.dg/invalid_interface_assignment.f90: Ditto.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197389 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/56812
	* tree-vect-data-refs.c (vect_slp_analyze_data_ref_dependence):
	DRs of the same interleaving chain are independent.

	* g++.dg/vect/slp-pr56812.cc: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197390 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c/19449
	* tree.h (force_folding_builtin_constant_p): New decl.
	* builtins.c (force_folding_builtin_constant_p): New variable.
	(fold_builtin_constant_p): Fold immediately also if
	force_folding_builtin_constant_p.

	* c-parser.c (c_parser_get_builtin_args): Add choose_expr_p
	argument.  If set, or it temporarily for parsing of the first
	argument into force_folding_builtin_constant_p.
	(c_parser_postfix_expression): Adjust callers.

	* gcc.c-torture/execute/pr19449.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197393 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Marc Glisse  <marc.glisse@inria.fr>

gcc/
	* simplify-rtx.c (simplify_binary_operation_1) <VEC_SELECT>:
	Handle VEC_MERGE.
	(simplify_ternary_operation) <VEC_MERGE>: Use unsigned HOST_WIDE_INT
	for masks. Test for side effects. Handle nested VEC_MERGE. Handle
	equal arguments.

gcc/testsuite/
	* gcc.target/i386/merge-1.c: New testcase.
	* gcc.target/i386/avx2-vpblendd128-1.c: Make it non-trivial.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197394 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/56790
gcc/
	* fold-const.c (fold_ternary_loc) <VEC_COND_EXPR>: Add constant folding.

gcc/testsuite/
	* g++.dg/ext/pr56790-1.C: New testcase.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197395 138bc75d-0d04-0410-961f-82ee72b054a4
	* rtl.h (AUTO_INC_DEC): Fix typo of HAVE_POST_MODIFY_DISP.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197398 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/56407
	* gcc.dg/torture/pr56407.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197399 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/56501
	* gcc.dg/torture/pr56501.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197401 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/55964
	* gcc.dg/torture/pr55964-2.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197403 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/spu/spu.c (emit_nop_for_insn): Handle JUMP_TABLE_DATA.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197406 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Richard Biener  <rguenther@suse.de>

	* g++.dg/vect/slp-pr56812.cc: Use dg-additional-options.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197407 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/34949
	* g++.dg/tree-ssa/ehcleanup-1.C: Adjust unreachable count.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197408 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Marc Glisse  <marc.glisse@inria.fr>

	* tree-flow-inline.h (get_addr_base_and_unit_offset_1): Handle
	BIT_FIELD_REF.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197409 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Marc Glisse  <marc.glisse@inria.fr>

gcc/
	* tree-vect-stmts.c (vectorizable_store): Accept BIT_FIELD_REF.
	(vectorizable_load): Likewise.
	* tree-vect-slp.c (vect_build_slp_tree): Likewise.
	* tree-vect-data-refs.c (vect_create_data_ref_ptr): Handle VECTOR_TYPE.

gcc/testsuite/
	* gcc.dg/vect/bb-slp-31.c: New file.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197410 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/56817
	* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely):
	Split out ...
	(tree_unroll_loops_completely_1): ... new function to manually
	walk the loop tree, properly defering outer loops of unrolled
	loops to later iterations.

	* g++.dg/torture/pr56817.C: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197411 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/v850/v850e3v5.md (fmasf4): Use fmaf.s on E3V5
	architectures.
	(fmssf4): Use fmsf.s on E3V5 architectures.
	(fnmasf4): Use fnmaf.s on E3V5 architectures.
	(fnmssf4): Use fnmsf.s on E3V5 architectures.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197413 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/56834
	* include/debug/array (tuple_size, tuple_element): Do not declare.
	* include/profile/array: Likewise.
	* testsuite/23_containers/array/tuple_interface/
	tuple_element_debug_neg.cc: Adjust dg-error line number.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197415 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-03  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	PR target/56771
	* configure.ac: Require 64-bit int for arm*-*-rtems*.
	* configure: Regenerate.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197417 138bc75d-0d04-0410-961f-82ee72b054a4
	PR debug/56819
	* tree.c (strip_typedefs): Copy NON_DEFAULT_TEMPLATE_ARGS_COUNT
	from args to new_args.
	(strip_typedefs_expr): Copy NON_DEFAULT_TEMPLATE_ARGS_COUNT from t to
	r instead of doing {S,G}ET_NON_DEFAULT_TEMPLATE_ARGS_COUNT.

	* g++.dg/debug/pr56819.C: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197420 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
2013-04-03  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	PR target/56809
	* config/arm/arm.c (is_jump_table): Use next_active_insn instead of
	next_real_insn.
	(thumb1_output_casesi): Likewise.
	(thumb2_output_casesi): Likewise.

gcc/testsuite
2013-04-03  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	PR target/56809
	* gcc.dg/pr56809.c: New testcase.


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