2013-05-28  Martin Jambor  <mjambor@suse.cz>

	* tree-cfg.c (verify_expr): Verify that BIT_FIELD_REFs, IMAGPART_EXPRs
	and REALPART_EXPRs have scalar type.



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

	PR tree-optimization/56787
	* tree-vect-data-refs.c (vect_analyze_data_refs): Drop clobbers
	from the list of data references.
	* tree-vect-loop.c (vect_determine_vectorization_factor): Skip
	clobbers.
	(vect_analyze_loop_operations): Likewise.
	(vect_transform_loop): Remove clobbers.

	* gcc.dg/vect/pr56787.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199380 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/sparc/sol2-unwind.h (MD_FALLBACK_FRAME_STATE_FOR): Do not set
	fs->signal_frame for SIGFPE raised for IEEE-754 exceptions.
	* config/i386/sol2-unwind.h (x86_fallback_frame_state): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199381 138bc75d-0d04-0410-961f-82ee72b054a4
2013-05-28  Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR fortran/57435
        * module.c (check_for_ambiguous): Avoid null pointer deref.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57435



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199382 138bc75d-0d04-0410-961f-82ee72b054a4
2013-05-28  Tobias Burnus  <burnus@net-b.de>

        * trans-expr.c (gfc_conv_procedure_call): Deallocate
        polymorphic arrays for allocatable intent(out) dummies.
        (gfc_reset_vptr): New function, moved from trans-stmt.c
        and extended.
        * trans-stmt.c (reset_vptr): Remove.
        (gfc_trans_deallocate): Update calls.
        * trans.h (gfc_reset_vptr): New prototype.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/class_array_16.f90: New.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199383 138bc75d-0d04-0410-961f-82ee72b054a4
2013-05-28  Easwaran Raman  <eraman@google.com>

	PR tree-optimization/57337
	* tree-ssa-reassoc.c (appears_later_in_bb): New function.
	(find_insert_point): Correctly identify the insertion point
	when two statements with the same UID is compared.




git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199385 138bc75d-0d04-0410-961f-82ee72b054a4
        PR rtl-optimization/57439
        * postreload.c (move2add_use_add2_insn): Use gen_lowpart_common.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199387 138bc75d-0d04-0410-961f-82ee72b054a4
2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * resolve.c (gfc_resolve_finalizers): Remove not implemented
        * error.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * gfortran.dg/finalize_11.f90: New.
        * gfortran.dg/finalize_4.f03: Remove dg-error.
        * gfortran.dg/finalize_5.f03: Ditto.
        * gfortran.dg/finalize_6.f03: Ditto.
        * gfortran.dg/finalize_7.f03: Ditto.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199388 138bc75d-0d04-0410-961f-82ee72b054a4
Implemented Cilk Plus Array Notation for C Compiler.
gcc/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

	* doc/extend.texi (C Extensions): Added documentation about Cilk 
Plus
	array notation built-in reduction functions.
	* doc/passes.texi (Passes): Added documentation about changes done
	for Cilk Plus.
	* doc/invoke.texi (C Dialect Options): Added documentation about
	the -fcilkplus flag.
	* Makefile.in (C_COMMON_OBJS): Added 
c-family/array-notation-common.o.
	(BUILTINS_DEF): Depend on cilkplus.def.
	* builtins.def: Include cilkplus.def.  Define 
DEF_CILKPLUS_BUILTIN.
	* builtin-types.def: Define BT_FN_INT_PTR_PTR_PTR.
	* cilkplus.def: New file.

gcc/c-family/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

	* c-common.c (c_define_builtins): When cilkplus is enabled, the
	function array_notation_init_builtins is called.
	(c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
	* c-common.def (ARRAY_NOTATION_REF): New tree.
	* c-common.h (build_array_notation_expr): New function declaration.
	(build_array_notation_ref): Likewise.
	(extract_sec_implicit_index_arg): New extern declaration.
	(is_sec_implicit_index_fn): Likewise.
	(ARRAY_NOTATION_CHECK): New define.
	(ARRAY_NOTATION_ARRAY): Likewise.
	(ARRAY_NOTATION_START): Likewise.
	(ARRAY_NOTATION_LENGTH): Likewise.
	(ARRAY_NOTATION_STRIDE): Likewise.
	* c-pretty-print.c (pp_c_postifix_expression): Added a new case for
	ARRAY_NOTATION_REF.
	(pp_c_expression): Likewise.
	* c.opt (flag_enable_cilkplus): New flag.
	* array-notation-common.c: New file.

gcc/c/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

	* c-typeck.c (build_array_ref): Added a check to see if array's
	index is greater than one.  If true, then emit an error.
	(build_function_call_vec): Exclude error reporting and checking
	for builtin array-notation functions.
	(convert_arguments): Likewise.
	(c_finish_return): Added a check for array notations as a return
	expression.  If true, then emit an error.
	(c_finish_loop): Added a check for array notations in a loop
	condition.  If true then emit an error.
	(lvalue_p): Added a ARRAY_NOTATION_REF case.
	(build_binary_op): Added a check for array notation expr inside
	op1 and op0.  If present, we call another function to find correct
	type.
	* Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
	* c-parser.c (c_parser_compound_statement): Check if array
	notation code is used in tree, if so, then transform them into
	appropriate C code.
	(c_parser_expr_no_commas): Check if array notation is used in LHS
	or RHS, if so, then build array notation expression instead of
	regular modify.
	(c_parser_postfix_expression_after_primary): Added a check for
	colon(s) after square braces, if so then handle it like an array
	notation.  Also, break up array notations in unary op if found.
	(c_parser_direct_declarator_inner): Added a check for array
	notation.
	(c_parser_compound_statement): Added a check for array notation in
	a stmt.  If one is present, then expand array notation expr.
	(c_parser_if_statement): Likewise.
	(c_parser_switch_statement): Added a check for array notations in
	a switch statement's condition.  If true, then output an error.
	(c_parser_while_statement): Similarly, but for a while.
	(c_parser_do_statement): Similarly, but for a do-while.
	(c_parser_for_statement): Similarly, but for a for-loop.
	(c_parser_unary_expression): Check if array notation is used in a
	pre-increment or pre-decrement expression.  If true, then expand
	them.
	(c_parser_array_notation): New function.
	* c-array-notation.c: New file.
	* c-tree.h (is_cilkplus_reduce_builtin): Protoize.

gcc/testsuite/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

	* c-c++-common/cilk-plus/AN/array_test1.c: New test.
	* c-c++-common/cilk-plus/AN/array_test2.c: Likewise.
	* c-c++-common/cilk-plus/AN/array_test_ND.c: Likewise.
	* c-c++-common/cilk-plus/AN/builtin_func_double.c: Likewise.
	* c-c++-common/cilk-plus/AN/builtin_func_double2.c: Likewise.
	* c-c++-common/cilk-plus/AN/gather-scatter-errors.c: Likewise.
	* c-c++-common/cilk-plus/AN/if_test.c: Likewise.
	* c-c++-common/cilk-plus/AN/sec_implicit_ex.c: Likewise.
	* c-c++-common/cilk-plus/AN/decl-ptr-colon.c: Likewise.
	* c-c++-common/cilk-plus/AN/dimensionless-arrays.c: Likewise.
	* c-c++-common/cilk-plus/AN/fn_ptr.c: Likewise.
	* c-c++-common/cilk-plus/AN/fp_triplet_values.c: Likewise.
	* c-c++-common/cilk-plus/AN/gather-scatter.c: Likewise.
	* c-c++-common/cilk-plus/AN/misc.c: Likewise.
	* c-c++-common/cilk-plus/AN/parser_errors.c: Likewise.
	* c-c++-common/cilk-plus/AN/parser_errors2.c: Likewise.
	* c-c++-common/cilk-plus/AN/parser_errors3.c: Likewise.
	* c-c++-common/cilk-plus/AN/parser_errors4.c: Likewise.
	* c-c++-common/cilk-plus/AN/rank_mismatch.c: Likewise.
	* c-c++-common/cilk-plus/AN/rank_mismatch2.c: Likewise.
	* c-c++-common/cilk-plus/AN/rank_mismatch3.c: Likewise.
	* c-c++-common/cilk-plus/AN/sec_implicit.c: Likewise.
	* c-c++-common/cilk-plus/AN/sec_implicit2.c: Likewise.
	* c-c++-common/cilk-plus/AN/sec_reduce_max_min_ind.c: Likewise.
	* c-c++-common/cilk-plus/AN/tst_lngth.c: Likewise.
	* c-c++-common/cilk-plus/AN/vla.c: Likewise.
	* c-c++-common/cilk-plus/AN/an-if.c: Likewise.
	* c-c++-common/cilk-plus/AN/builtin_fn_custom.c: Likewise.
	* c-c++-common/cilk-plus/AN/builtin_fn_mutating.c: Likewise.
	* c-c++-common/cilk-plus/AN/comma_exp.c: Likewise.
	* c-c++-common/cilk-plus/AN/conditional.c: Likewise.
	* c-c++-common/cilk-plus/AN/exec-once.c: Likewise.
	* c-c++-common/cilk-plus/AN/exec-once2.c: Likewise.
	* c-c++-common/cilk-plus/AN/gather_scatter.c: Likewise.
	* c-c++-common/cilk-plus/AN/n-ptr-test.c: Likewise.
	* c-c++-common/cilk-plus/AN/side-effects-1.c: Likewise.
	* c-c++-common/cilk-plus/AN/test_builtin_return.c: Likewise.
	* c-c++-common/cilk-plus/AN/test_sec_limits.c: Likewise.
	* gcc.dg/cilk-plus/cilk-plus.exp: New script.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199389 138bc75d-0d04-0410-961f-82ee72b054a4
	* src/c++11/compatibility-chrono.cc (steady_clock::now()): If
	!_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
	calling non-existent from_time_t.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199391 138bc75d-0d04-0410-961f-82ee72b054a4
2013-05-28  Steve Ellcey  <sellcey@mips.com>

	* config/mips/mips-cpus.def (mips32r2): Change processor type.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199393 138bc75d-0d04-0410-961f-82ee72b054a4
Update the ChangeLog to fix the typo.


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

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

	* tree-vect-slp.c (vect_bb_slp_scalar_cost): New function
	computing scalar cost offsetted by stmts that are kept live
	by scalar uses.
	(vect_bb_vectorization_profitable_p): Use vect_bb_slp_scalar_cost
	for computation of scalar cost.

	* gcc.dg/vect/bb-slp-32.c: New testcase.


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

	* tree-vect-slp.c (vect_bb_slp_scalar_cost): Guard vinfo
	access on whether the use is in the BB we currently try to
	vectorize.
	(vect_bb_vectorization_profitable_p): Pass the BB we currently
	vectorize to vect_bb_slp_scalar_cost.


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