summaryrefslogtreecommitdiff
path: root/gcc/testsuite
Commit message (Collapse)AuthorAgeFilesLines
* Merge in trunk.mrs2013-12-13263-230/+7603
|\ | | | | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/wide-int@205966 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR tree-optimization/45685law2013-12-132-0/+46
| | | | | | | | | | | | | | | | | | | | * tree-ssa-phiopt.c (neg_replacement): New function. (tree_ssa_phiopt_worker): Call it. PR tree-optimization/45685 * gcc.dg/tree-ssa/pr45685.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205963 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR tree-optimization/58296amker2013-12-134-0/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR tree-optimization/41488 * tree-scalar-evolution.c: Include necessary header files. (simplify_peeled_chrec): New function. (analyze_evolution_in_loop): New static variable. Call simplify_peeled_chrec. * tree-ssa-loop-ivopts.c (mark_bivs): Don't mark peeled IV as biv. (add_old_iv_candidates): Don't add candidate for peeled IV. * tree-affine.h (aff_combination_zero_p): New function. PR tree-optimization/58296 PR tree-optimization/41488 * gcc.dg/tree-ssa/scev-7.c: New test. * gcc.dg/pr41488.c: New test. * g++.dg/pr59445.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205959 138bc75d-0d04-0410-961f-82ee72b054a4
| * Update to copy of current master Go testsuite.ian2013-12-1395-135/+3096
| | | | | | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205955 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR c++/58954jason2013-12-131-0/+39
| | | | | | | | | | | | * pt.c (resolve_overloaded_unification): Use instantiate_template. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205952 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-12 Tobias Burnus <burnus@net-b.de>burnus2013-12-123-0/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/59440 * trans-decl.c (generate_namelist_decl): Ensure debug DIE is created by setting DECL_IGNORED_P to 0. 2013-12-12 Tobias Burnus <burnus@net-b.de> PR fortran/59440 * gfortran.dg/namelist_83.f90: New. * gfortran.dg/namelist_83_2.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205939 138bc75d-0d04-0410-961f-82ee72b054a4
| * compiler: Don't compare structs with blank non-comparable fields.ian2013-12-122-4/+4
| | | | | | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205937 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR middle-end/59470jakub2013-12-122-1/+194
| | | | | | | | | | | | | | * g++.dg/opt/pr59470.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205934 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-12 Max Ostapenko <m.ostapenko@partner.samsung.com>chefmax2013-12-1216-1/+492
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * c-c++-common/tsan/free_race2.c: New file. * c-c++-common/tsan/race_on_barrier2.c: Likewise. * c-c++-common/tsan/race_on_mutex.c: Likewise. * c-c++-common/tsan/race_on_mutex2.c: Likewise. * c-c++-common/tsan/simple_race.c: Likewise. * c-c++-common/tsan/simple_stack.c: Likewise. * g++.dg/tsan/aligned_vs_unaligned_race.C: Likewise. Test applies only on x86_64-linux targets. * g++.dg/tsan/atomic_free.C: Likewise. * g++.dg/tsan/atomic_free2.C: Likewise. * g++.dg/tsan/benign_race.C: Likewise. * g++.dg/tsan/cond_race.C: Likewise. * g++.dg/tsan/default_options.C: Likewise. * g++.dg/tsan/fd_close_norace.C: Likewise. * g++.dg/tsan/fd_close_norace2.C: Likewise. * g++-dg/tsan/tsan.exp: Modified to run additional C++ tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205925 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR libgomp/59467jakub2013-12-123-0/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gimplify.c (omp_check_private): Add copyprivate argument, if it is true, don't check omp_privatize_by_reference. (gimplify_scan_omp_clauses): For OMP_CLAUSE_COPYPRIVATE verify decl is private in outer context. Adjust omp_check_private caller. * gfortran.dg/gomp/pr59467.f90: New test. * c-c++-common/gomp/pr59467.c: New test. * testsuite/libgomp.fortran/crayptr2.f90: Add private (d) clause to !$omp parallel. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205922 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR testsuite/59442uros2013-12-125-7/+14
| | | | | | | | | | | | | | | | | | | | | | * gcc.target/i386/sse2-movapd-1.c: Fix alignment attributes. * gcc.target/i386/sse2-movapd-2.c: Likewise. * gcc.target/i386/avx-vmovapd-256-1.c: Likewise. * gcc.target/i386/avx-vmovapd-256-2.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205919 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-11 Sriraman Tallam <tmsriram@google.com>tmsriram2013-12-114-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR target/59390 * config/i386/i386.c (get_builtin): New function. (ix86_builtin_vectorized_function): Replace all instances of ix86_builtins[...] with get_builtin(...). (ix86_builtin_reciprocal): Ditto. PR target/59390 * gcc.target/i386/pr59390.c: New test. * gcc.target/i386/pr59390_1.c: New test. * gcc.target/i386/pr59390_2.c: New test. Tested boot-strap on all languages and test parity on x86_64 and with -m32. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205904 138bc75d-0d04-0410-961f-82ee72b054a4
| * Added Compiler Support for _Cilk_spawn and _Cilk_sync for C++.bviyer2013-12-118-0/+740
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/c-family/ChangeLog 2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com> * cilk.c (cilk_outline): Made this function non-static. (gimplify_cilk_spawn): Removed pre_p and post_p arguments. (create_cilk_wrapper): Added a new parameter: a function pointer. (c_install_body_w_frame_cleanup): Remove (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case. * c-common.h (cilk_outline): New prototype. (gimplify_cilk_spawn): Removed two parameters. (cilk_install_body_with_frame_cleanup): New prototype. * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and CILK_SPAWN_STMT case. gcc/c/ChangeLog 2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com> * c-objc-common.h (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Remove. (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise. (LANG_HOOKS_CILKPLUS_CILKPLUS_GIMPLIFY_SPAWN): Likewise. * c-typeck.c (cilk_install_body_with_frame_cleanup): New function. gcc/ChangeLog 2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com> * langhooks.h (lang_hooks_for_decls): Remove lang_hooks_for_cilkplus. (lang_hooks_for_cilkplus): Remove. * langhooks.c (lhd_cilk_detect_spawn): Likewise. (lhd_install_body_with_frame_cleanup): Likewise. * langhooks-def.h (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Likewise. (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise. (LANG_HOOKS_CILKPLUS_CILKPLUS_GIMPLIFY_SPAWN): Likewise. (LANG_HOOKS_CILKPLUS): Likewise. (LANG_HOOKS_DECLS): Remove LANG_HOOKS_CILKPLUS. * gimplify.c (gimplify_expr): Removed CILK_SPAWN_STMT case. (gimplify_modify_expr): Removed handling of _Cilk_spawn in expr. (gimplify_call_expr): Likewise. gcc/cp/ChangeLog 2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com> * cp-tree.h (cilk_valid_spawn): New prototype. (gimplify_cilk_spawn): Likewise. (create_try_catch_expr): Likewise. * decl.c (finish_function): Insert Cilk function-calls when a _Cilk_spawn is used in a function. * parser.c (cp_parser_postfix_expression): Added RID_CILK_SPAWN and RID_CILK_SYNC cases. * cp-cilkplus.c (set_cilk_except_flag): New function. (set_cilk_except_data): Likewise. (cilk_install_body_with_frame_cleanup): Likewise. * except.c (create_try_catch_expr): Likewise. * parser.h (IN_CILK_SPAWN): New #define. * pt.c (tsubst_expr): Added CILK_SPAWN_STMT and CILK_SYNC_STMT cases. * semantics.c (potential_constant_expression_1): Likewise. * typeck.c (cp_build_compound_expr): Reject a spawned function in a compound expression. (check_return_expr): Reject a spawned function in a return expression. * cp-gimplify.c (cp_gimplify_expr): Added a CILK_SPAWN_STMT and CALL_EXPR case. Added handling of spawned function in MODIFY_EXPR and INIT_EXPR. gcc/testsuite/ChangeLog 2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com> * g++.dg/cilk-plus/CK/catch_exc.cc: New test case. * g++.dg/cilk-plus/CK/const_spawn.cc: Likewise. * g++.dg/cilk-plus/CK/fib-opr-overload.cc: Likewise. * g++.dg/cilk-plus/CK/fib-tplt.cc: Likewise. * g++.dg/cilk-plus/CK/lambda_spawns.cc: Likewise. * g++.dg/cilk-plus/CK/lambda_spawns_tplt.cc: Likewise. * g++.dg/cilk-plus/cilk-plus.exp: Added support to run Cilk Keywords test stored in c-c++-common. Also, added the Cilk runtime's library to the ld_library_path. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205902 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-11 Bernd Edlinger <bernd.edlinger@hotmail.de>edlinger2013-12-113-0/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR middle-end/59134 * expmed.c (store_bit_field): Use narrow_bit_field_mem and store_fixed_bit_field_1 for -fstrict-volatile-bitfields. (store_fixed_bit_field): Split up. Call store_fixed_bit_field_1 to do the real work. (store_fixed_bit_field_1): New function. (store_split_bit_field): Limit the unit size to the memory mode size, to prevent recursion. testsuite: * gcc.c-torture/compile/pr59134.c: New test. * gnat.dg/misaligned_volatile.adb: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205898 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-11 Bernd Edlinger <bernd.edlinger@hotmail.de>edlinger2013-12-112-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sandra Loosemore <sandra@codesourcery.com> PR middle-end/23623 PR middle-end/48784 PR middle-end/56341 PR middle-end/56997 * expmed.c (strict_volatile_bitfield_p): Add bitregion_start and bitregion_end parameters. Test for compliance with C++ memory model. (store_bit_field): Adjust call to strict_volatile_bitfield_p. Add fallback logic for cases where -fstrict-volatile-bitfields is supposed to apply, but cannot. (extract_bit_field): Likewise. Use narrow_bit_field_mem and extract_fixed_bit_field_1 to do the extraction. (extract_fixed_bit_field): Revert to previous mode selection algorithm. Call extract_fixed_bit_field_1 to do the real work. (extract_fixed_bit_field_1): New function. testsuite: * gcc.dg/pr23623.c: Update to test interaction with C++ memory model. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205897 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-11 Sandra Loosemore <sandra@codesourcery.com>edlinger2013-12-119-0/+308
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR middle-end/23623 PR middle-end/48784 PR middle-end/56341 PR middle-end/56997 gcc/ * expmed.c (strict_volatile_bitfield_p): New function. (store_bit_field_1): Don't special-case strict volatile bitfields here. (store_bit_field): Handle strict volatile bitfields here instead. (store_fixed_bit_field): Don't special-case strict volatile bitfields here. (extract_bit_field_1): Don't special-case strict volatile bitfields here. (extract_bit_field): Handle strict volatile bitfields here instead. (extract_fixed_bit_field): Don't special-case strict volatile bitfields here. Simplify surrounding code to resemble that in store_fixed_bit_field. * doc/invoke.texi (Code Gen Options): Update -fstrict-volatile-bitfields description. gcc/testsuite/ * gcc.dg/pr23623.c: New test. * gcc.dg/pr48784-1.c: New test. * gcc.dg/pr48784-2.c: New test. * gcc.dg/pr56341-1.c: New test. * gcc.dg/pr56341-2.c: New test. * gcc.dg/pr56997-1.c: New test. * gcc.dg/pr56997-2.c: New test. * gcc.dg/pr56997-3.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205896 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-11 Janus Weil <janus@gcc.gnu.org>janus2013-12-112-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/58916 * resolve.c (conformable_arrays): Treat scalar 'e2'. (resolve_allocate_expr): Check rank also for unlimited-polymorphic variables. 2013-12-11 Janus Weil <janus@gcc.gnu.org> PR fortran/58916 * gfortran.dg/allocate_with_source_4.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205894 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR tree-optimization/59417jakub2013-12-112-0/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * tree-ssa-copy.c (fini_copy_prop): If copy_of[i].value is defined in a different bb rhan var, only duplicate points-to info and not alignment info and don't duplicate range info. * tree-ssa-loop-niter.c (determine_value_range): Instead of assertion failure handle inconsistencies in range info by only using var's range info and not PHI result range infos. * gcc.c-torture/compile/pr59417.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205884 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR tree-optimization/59386jakub2013-12-112-0/+29
| | | | | | | | | | | | | | | | | | | | * tree-inline.c (remap_gimple_stmt): If not id->do_not_unshare, unshare_expr (id->retval) before passing it to gimple_build_assign. * gcc.c-torture/compile/pr59386.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205883 138bc75d-0d04-0410-961f-82ee72b054a4
| * Reverted:amker2013-12-113-36/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2013-12-10 Bin Cheng <bin.cheng@arm.com> PR tree-optimization/41488 * tree-ssa-loop-ivopts.c (add_old_iv_candidates): Don't add cand for PEELED_CHREC kind IV. * tree-scalar-evolution.c: Include necessary header files. (peeled_chrec_map, simplify_peeled_chrec): New. (analyze_evolution_in_loop): New static variable. Call simplify_peeled_chrec. (scev_initialize): Initialize peeled_chrec_map. (scev_reset, scev_finalize): Reset and release peeled_chrec_map. Reverted: 2013-12-10 Bin Cheng <bin.cheng@arm.com> PR tree-optimization/41488 * gcc.dg/tree-ssa/scev-7.c: New test. * gcc.dg/pr41488.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205880 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-10 Janus Weil <janus@gcc.gnu.org>janus2013-12-103-1/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/35831 * interface.c (check_dummy_characteristics): Add checks for several attributes. 2013-12-10 Janus Weil <janus@gcc.gnu.org> PR fortran/35831 * gfortran.dg/c_by_val_5.f90: Modified. * gfortran.dg/dummy_procedure_10.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205873 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-10 Yury Gribov <y.gribov@samsung.com>ygribov2013-12-103-0/+7
| | | | | | | | | | | | | | | | * gcc-dg/tsan/tsan.exp: Added missing call to torture-finish. * g++-dg/tsan/tsan.exp: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205858 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-10 Richard Biener <rguenther@suse.de>rguenth2013-12-102-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR middle-end/38474 * tree-ssa-structalias.c (solution_set_expand): Expand into a different possibly cached bitmap and return the result. (set_union_with_increment): Pass in a shared expanded bitmap and adjust. (do_sd_constraint): Likewise. (do_ds_constraint): Likewise. (do_complex_constraint): Likewise. (solve_graph): Manage the shared expanded bitmap. * gcc.dg/ipa/ipa-pta-14.c: Un-XFAIL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205857 138bc75d-0d04-0410-961f-82ee72b054a4
| * * tree-vectorizer.h (struct _loop_vec_info): Add scalar_loop field.jakub2013-12-101-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (LOOP_VINFO_SCALAR_LOOP): Define. (slpeel_tree_duplicate_loop_to_edge_cfg): Add scalar_loop argument. * config/i386/sse.md (maskload<mode>, maskstore<mode>): New expanders. * tree-data-ref.c (get_references_in_stmt): Handle MASK_LOAD and MASK_STORE. * internal-fn.def (LOOP_VECTORIZED, MASK_LOAD, MASK_STORE): New internal fns. * tree-if-conv.c: Include expr.h, optabs.h, tree-ssa-loop-ivopts.h and tree-ssa-address.h. (release_bb_predicate): New function. (free_bb_predicate): Use it. (reset_bb_predicate): Likewise. Don't unallocate bb->aux just to immediately allocate it again. (add_to_predicate_list): Add loop argument. If basic blocks that dominate loop->latch don't insert any predicate. (add_to_dst_predicate_list): Adjust caller. (if_convertible_phi_p): Add any_mask_load_store argument, if true, handle it like flag_tree_loop_if_convert_stores. (insert_gimplified_predicates): Likewise. (ifcvt_can_use_mask_load_store): New function. (if_convertible_gimple_assign_stmt_p): Add any_mask_load_store argument, check if some conditional loads or stores can't be converted into MASK_LOAD or MASK_STORE. (if_convertible_stmt_p): Add any_mask_load_store argument, pass it down to if_convertible_gimple_assign_stmt_p. (predicate_bbs): Don't return bool, only check if the last stmt of a basic block is GIMPLE_COND and handle that. Adjust add_to_predicate_list caller. (if_convertible_loop_p_1): Only call predicate_bbs if flag_tree_loop_if_convert_stores and free_bb_predicate in that case afterwards, check gimple_code of stmts here. Replace is_predicated check with dominance check. Add any_mask_load_store argument, pass it down to if_convertible_stmt_p and if_convertible_phi_p, call if_convertible_phi_p only after all if_convertible_stmt_p calls. (if_convertible_loop_p): Add any_mask_load_store argument, pass it down to if_convertible_loop_p_1. (predicate_mem_writes): Emit MASK_LOAD and/or MASK_STORE calls. (combine_blocks): Add any_mask_load_store argument, pass it down to insert_gimplified_predicates and call predicate_mem_writes if it is set. Call predicate_bbs. (version_loop_for_if_conversion): New function. (tree_if_conversion): Adjust if_convertible_loop_p and combine_blocks calls. Return todo flags instead of bool, call version_loop_for_if_conversion if if-conversion should be just for the vectorized loops and nothing else. (main_tree_if_conversion): Adjust caller. Don't call tree_if_conversion for dont_vectorize loops if if-conversion isn't explicitly enabled. * tree-vect-data-refs.c (vect_check_gather): Handle MASK_LOAD/MASK_STORE. (vect_analyze_data_refs, vect_supportable_dr_alignment): Likewise. * gimple.h (gimple_expr_type): Handle MASK_STORE. * internal-fn.c (expand_LOOP_VECTORIZED, expand_MASK_LOAD, expand_MASK_STORE): New functions. * tree-vectorizer.c: Include tree-cfg.h and gimple-fold.h. (vect_loop_vectorized_call, fold_loop_vectorized_call): New functions. (vectorize_loops): Don't try to vectorize loops with loop->dont_vectorize set. Set LOOP_VINFO_SCALAR_LOOP for if-converted loops, fold LOOP_VECTORIZED internal call depending on if loop has been vectorized or not. * tree-vect-loop-manip.c (slpeel_duplicate_current_defs_from_edges): New function. (slpeel_tree_duplicate_loop_to_edge_cfg): Add scalar_loop argument. If non-NULL, copy basic blocks from scalar_loop instead of loop, but still to loop's entry or exit edge. (slpeel_tree_peel_loop_to_edge): Add scalar_loop argument, pass it down to slpeel_tree_duplicate_loop_to_edge_cfg. (vect_do_peeling_for_loop_bound, vect_do_peeling_for_loop_alignment): Adjust callers. (vect_loop_versioning): If LOOP_VINFO_SCALAR_LOOP, perform loop versioning from that loop instead of LOOP_VINFO_LOOP, move it to the right place in the CFG afterwards. * tree-vect-loop.c (vect_determine_vectorization_factor): Handle MASK_STORE. * cfgloop.h (struct loop): Add dont_vectorize field. * tree-loop-distribution.c (copy_loop_before): Adjust slpeel_tree_duplicate_loop_to_edge_cfg caller. * optabs.def (maskload_optab, maskstore_optab): New optabs. * passes.def: Add a note that pass_vectorize must immediately follow pass_if_conversion. * tree-predcom.c (split_data_refs_to_components): Give up if DR_STMT is a call. * tree-vect-stmts.c (vect_mark_relevant): Don't crash if lhs is NULL. (exist_non_indexing_operands_for_use_p): Handle MASK_LOAD and MASK_STORE. (vectorizable_mask_load_store): New function. (vectorizable_call): Call it for MASK_LOAD or MASK_STORE. (vect_transform_stmt): Handle MASK_STORE. * tree-ssa-phiopt.c (cond_if_else_store_replacement): Ignore DR_STMT where lhs is NULL. * optabs.h (can_vec_perm_p): Fix up comment typo. (can_vec_mask_load_store_p): New prototype. * optabs.c (can_vec_mask_load_store_p): New function. * gcc.dg/vect/vect-cond-11.c: New test. * gcc.target/i386/vect-cond-1.c: New test. * gcc.target/i386/avx2-gather-5.c: New test. * gcc.target/i386/avx2-gather-6.c: New test. * gcc.dg/vect/vect-mask-loadstore-1.c: New test. * gcc.dg/vect/vect-mask-load-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205856 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR sanitizer/59437mpolacek2013-12-102-0/+29
| | | | | | | | | | | | | | | | | | | | | | * vtable-verify.c (var_is_used_for_virtual_call_p): Check the return value of gimple_call_fn. Use is_gimple_call/is_gimple_assign instead of gimple_code. testsuite/ * g++.dg/ubsan/pr59437.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205854 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-10 Max Ostapenko <m.ostapenko@partner.samsung.com>ygribov2013-12-104-1/+18
| | | | | | | | | | | | | | | | | | * c-c++-common/tsan/thread_leak2.c: `dg-skip-if' removed. * gcc-dg/tsan/tsan.exp: Run only with '-O0' and '-O2' options. * g++-dg/tsan/tsan.exp: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205853 138bc75d-0d04-0410-961f-82ee72b054a4
| * * gcc.dg/vect/pr58508.c: XFAIL for vect_no_align.ebotcazou2013-12-103-2/+7
| | | | | | | | | | | | | | * gcc.dg/vect/vect-reduc-pattern-3.c: Require vect_int_mult. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205852 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR tree-optimization/41488amker2013-12-103-0/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tree-ssa-loop-ivopts.c (add_old_iv_candidates): Don't add cand for PEELED_CHREC kind IV. * tree-scalar-evolution.c: Include necessary header files. (peeled_chrec_map, simplify_peeled_chrec): New. (analyze_evolution_in_loop): New static variable. Call simplify_peeled_chrec. (scev_initialize): Initialize peeled_chrec_map. (scev_reset, scev_finalize): Reset and release peeled_chrec_map. PR tree-optimization/41488 * gcc.dg/tree-ssa/scev-7.c: New test. * gcc.dg/pr41488.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205848 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR preprocessor/55715jsm282013-12-102-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | libcpp: * expr.c (num_binary_op): Implement subtraction directly rather than with negation and falling through into addition case. gcc/testsuite: * gcc.dg/cpp/expr-overflow-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205846 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-10 Tobias Burnus <burnus@net-b.de>burnus2013-12-092-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | PR fortran/59428 PR fortran/58099 PR fortran/58676 PR fortran/41724 * gfortran.dg/proc_ptr_result_4.f90: Fix proc-ptr interface. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205838 138bc75d-0d04-0410-961f-82ee72b054a4
| * /cppaolo2013-12-092-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2013-12-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/59435 * parser.c (cp_parser_cache_defarg): sizeof ... ( p ) can occur in a default argument too. /testsuite 2013-12-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/59435 * g++.dg/cpp0x/variadic-sizeof3.C: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205836 138bc75d-0d04-0410-961f-82ee72b054a4
| * Eliminate FOR_EACH_BB macro.dmalcolm2013-12-093-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/ * basic-block.h (FOR_EACH_BB): Eliminate macro. * asan.c (transform_statements, execute_sanopt): Eliminate use of FOR_EACH_BB in favor of FOR_EACH_BB_FN, to make use of cfun explicit. * auto-inc-dec.c (rest_of_handle_auto_inc_dec): Likewise. * bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges, set_edge_can_fallthru_flag, fix_up_fall_thru_edges, fix_crossing_unconditional_branches, add_reg_crossing_jump_notes, insert_section_boundary_note, rest_of_handle_reorder_blocks, duplicate_computed_gotos): Likewise. * cfg.c (clear_edges, compact_blocks, brief_dump_cfg): Likewise. * cfganal.c (find_unreachable_blocks, add_noreturn_fake_exit_edges, compute_dominance_frontiers_1, single_pred_before_succ_order): Likewise. * cfgbuild.c (find_many_sub_basic_blocks): Likewise. * cfgcleanup.c (try_optimize_cfg, delete_dead_jumptables): Likewise. * cfgexpand.c (add_scope_conflicts, discover_nonconstant_array_refs): Likewise. * cfgloop.c (flow_loops_cfg_dump, get_loop_body, record_loop_exits, verify_loop_structure): Likewise. * cfgloopanal.c (mark_loop_exit_edges): Likewise. * cfgrtl.c (compute_bb_for_insn, find_partition_fixes, verify_hot_cold_block_grouping, purge_all_dead_edges, fixup_abnormal_edges, record_effective_endpoints, outof_cfg_layout_mode, fixup_reorder_chain, force_one_exit_fallthru, break_superblocks): Likewise. * cgraphbuild.c (build_cgraph_edges, rebuild_cgraph_edges, cgraph_rebuild_references): Likewise. * combine-stack-adj.c (combine_stack_adjustments): Likewise. * combine.c (delete_noop_moves, create_log_links, combine_instructions): Likewise. * config/arm/arm.c (thumb1_reorg, thumb2_reorg): Likewise. * config/bfin/bfin.c (bfin_gen_bundles, reorder_var_tracking_notes): Likewise. * config/c6x/c6x.c (c6x_gen_bundles, conditionalize_after_sched, c6x_reorg): Likewise. * config/epiphany/resolve-sw-modes.c (resolve_sw_modes): Likewise. * config/frv/frv.c (frv_optimize_membar): Likewise. * config/i386/i386.c (ix86_finalize_stack_realign_flags): Likewise. * config/ia64/ia64.c (ia64_reorg): Likewise. * config/mips/mips.c (mips_annotate_pic_calls): Likewise. * config/picochip/picochip.c (reorder_var_tracking_notes): Likewise. * config/rs6000/rs6000.c (rs6000_alloc_sdmode_stack_slot): Likewise. * config/s390/s390.c (s390_regs_ever_clobbered): Likewise. * config/sh/sh_treg_combine.cc (sh_treg_combine::execute): Likewise. * config/spu/spu.c (spu_machine_dependent_reorg): Likewise. * config/tilegx/tilegx.c (tilegx_gen_bundles, reorder_var_tracking_notes): Likewise. * config/tilepro/tilepro.c (tilepro_gen_bundles, reorder_var_tracking_notes): Likewise. * coverage.c (coverage_compute_cfg_checksum): Likewise. * cprop.c (compute_hash_table_work, compute_cprop_data, local_cprop_pass, find_implicit_sets): Likewise. * cse.c (cse_condition_code_reg): Likewise. * dce.c (prescan_insns_for_dce): Likewise. * df-core.c (df_compact_blocks): Likewise. * df-problems.c (df_word_lr_alloc): Likewise. * df-scan.c (df_scan_start_dump, df_scan_blocks, df_insn_rescan_all, df_update_entry_exit_and_calls): Likewise. * dominance.c (calculate_dominance_info, verify_dominators, debug_dominance_info): Likewise. * dse.c (dse_step5_nospill): Likewise. * except.c (finish_eh_generation): Likewise. * final.c (compute_alignments): Likewise. * function.c (thread_prologue_and_epilogue_insns, rest_of_match_asm_constraints): Likewise. * gcse.c (compute_hash_table_work, prune_expressions, compute_pre_data, compute_code_hoist_vbeinout, hoist_code, calculate_bb_reg_pressure, compute_ld_motion_mems): Likewise. * gimple-iterator.c (gsi_commit_edge_inserts): Likewise. * gimple-ssa-isolate-paths.c (find_implicit_erroneous_behaviour, find_explicit_erroneous_behaviour): Likewise. * graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa, rewrite_cross_bb_scalar_deps_out_of_ssa): Likewise. * haifa-sched.c (haifa_sched_init): Likewise. * hw-doloop.c (discover_loops, set_bb_indices, reorder_loops): Likewise. * ifcvt.c (if_convert): Likewise. * init-regs.c (initialize_uninitialized_regs): Likewise. * ipa-prop.c (ipcp_transform_function): Likewise. * ipa-pure-const.c (analyze_function): Likewise. * ipa-split.c (find_split_points, execute_split_functions): Likewise. * ira-build.c (form_loop_tree): Likewise. * ira-costs.c (find_costs_and_classes): Likewise. * ira-emit.c (emit_moves, add_ranges_and_copies, ira_emit): Likewise. * ira.c (decrease_live_ranges_number, compute_regs_asm_clobbered, mark_elimination, update_equiv_regs, find_moveable_pseudos, split_live_ranges_for_shrink_wrap, allocate_initial_values): Likewise. * jump.c (mark_all_labels): Likewise. * lcm.c (compute_laterin, compute_insert_delete, compute_available, compute_nearerout, compute_rev_insert_delete): Likewise. * loop-init.c (fix_loop_structure): Likewise. * loop-invariant.c (calculate_loop_reg_pressure): Likewise. * lower-subreg.c (decompose_multiword_subregs, decompose_multiword_subregs): Likewise. * lra-assigns.c (assign_by_spills): Likewise. * lra-coalesce.c (lra_coalesce): Likewise. * lra-constraints.c (lra_inheritance, remove_inheritance_pseudos): Likewise. * lra-eliminations.c (lra_init_elimination): Likewise. * lra-spills.c (assign_spill_hard_regs, spill_pseudos, lra_final_code_change): Likewise. * lra.c (remove_scratches, check_rtl, has_nonexceptional_receiver, update_inc_notes): Likewise. * mcf.c (adjust_cfg_counts): Likewise. * mode-switching.c (optimize_mode_switching): Likewise. * modulo-sched.c (rest_of_handle_sms): Likewise. * omp-low.c (optimize_omp_library_calls, expand_omp_taskreg, expand_omp_target): Likewise. * postreload-gcse.c (alloc_mem, compute_hash_table): Likewise. * postreload.c (reload_cse_regs_1): Likewise. * predict.c (strip_predict_hints, tree_bb_level_predictions, tree_estimate_probability, expensive_function_p, estimate_bb_frequencies, compute_function_frequency): Likewise. * profile.c (is_inconsistent, compute_branch_probabilities, branch_prob): Likewise. * ree.c (find_removable_extensions): Likewise. * reg-stack.c (compensate_edges, convert_regs, reg_to_stack): Likewise. * regcprop.c (copyprop_hardreg_forward): Likewise. * reginfo.c (init_subregs_of_mode): Likewise. * regrename.c (regrename_analyze): Likewise. * regstat.c (regstat_compute_ri, regstat_compute_calls_crossed): Likewise. * reload1.c (has_nonexceptional_receiver, reload, calculate_elim_costs_all_insns): Likewise. * resource.c (init_resource_info, free_resource_info): Likewise. * sched-ebb.c (schedule_ebbs): Likewise. * sched-rgn.c (is_cfg_nonregular, find_single_block_region, haifa_find_rgns, sched_rgn_local_init): Likewise. * sel-sched-dump.c (sel_dump_cfg_2): Likewise. * sel-sched-ir.c (init_lv_sets, free_lv_sets, make_regions_from_the_rest): Likewise. * sese.c (build_sese_loop_nests, sese_build_liveouts): Likewise. * stack-ptr-mod.c (notice_stack_pointer_modification): Likewise. * store-motion.c (compute_store_table, build_store_vectors, one_store_motion_pass): Likewise. * tracer.c (tail_duplicate): Likewise. * trans-mem.c (compute_transaction_bits): Likewise. * tree-call-cdce.c (tree_call_cdce): Likewise. * tree-cfg.c (replace_loop_annotate, factor_computed_gotos, fold_cond_expr_cond, make_edges, assign_discriminators, make_abnormal_goto_edges, cleanup_dead_labels, group_case_labels, dump_cfg_stats, gimple_verify_flow_info, print_loop, execute_fixup_cfg): Likewise. * tree-cfgcleanup.c (cleanup_tree_cfg_1, merge_phi_nodes): Likewise. * tree-complex.c (init_dont_simulate_again, tree_lower_complex): Likewise. * tree-dfa.c (collect_dfa_stats, dump_enumerated_decls): Likewise. * tree-eh.c (execute_lower_resx, execute_lower_eh_dispatch, mark_reachable_handlers): Likewise. * tree-emutls.c (lower_emutls_function_body): Likewise. * tree-if-conv.c (main_tree_if_conversion): Likewise. * tree-inline.c (optimize_inline_calls): Likewise. * tree-into-ssa.c (rewrite_into_ssa, update_ssa): Likewise. * tree-nrv.c (tree_nrv, execute_return_slot_opt): Likewise. * tree-object-size.c (compute_object_sizes): Likewise. * tree-outof-ssa.c (eliminate_useless_phis, rewrite_trees, insert_backedge_copies, tree_profiling): Likewise. * tree-scalar-evolution.c (scev_const_prop): Likewise. * tree-sra.c (scan_function, sra_modify_function_body, propagate_dereference_distances, ipa_sra_modify_function_body, convert_callers): Likewise. * tree-ssa-ccp.c (ccp_initialize, execute_fold_all_builtins): Likewise. * tree-ssa-coalesce.c (build_ssa_conflict_graph): Likewise. create_outofssa_var_map, coalesce_partitions): Likewise. * tree-ssa-copy.c (init_copy_prop): Likewise. * tree-ssa-copyrename.c (rename_ssa_copies): Likewise. * tree-ssa-dce.c (find_obviously_necessary_stmts, eliminate_unnecessary_stmts): Likewise. * tree-ssa-dom.c (free_all_edge_infos, tree_ssa_dominator_optimize): Likewise. * tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Likewise. * tree-ssa-live.c (clear_unused_block_pointer, remove_unused_locals, new_tree_live_info, calculate_live_on_exit, dump_live_info, analyze_memory_references, fill_always_executed_in, tree_ssa_lim_finalize): Likewise. * tree-ssa-loop-manip.c (find_uses_to_rename, verify_loop_closed_ssa): Likewise. * tree-ssa-math-opts.c (execute_cse_reciprocals, execute_cse_sincos, execute_optimize_bswap, execute_optimize_widening_mul): Likewise. * tree-ssa-propagate.c (substitute_and_fold): Likewise. * tree-ssa-structalias.c (compute_points_to_sets): Likewise. * tree-ssa-tail-merge.c (find_same_succ, reset_cluster_vectors): Likewise. * tree-ssa-ter.c (find_replaceable_exprs): Likewise. * tree-ssa-threadupdate.c (thread_through_all_blocks): Likewise. * tree-ssa-uncprop.c (associate_equivalences_with_edges, tree_ssa_uncprop): Likewise. * tree-ssa-uninit.c (warn_uninitialized_vars, execute_late_warn_uninitialized): Likewise. * tree-ssa.c (verify_ssa, execute_update_addresses_taken): Likewise. * tree-stdarg.c (check_all_va_list_escapes, execute_optimize_stdarg): Likewise. * tree-switch-conversion.c (do_switchconv): Likewise. * tree-vect-generic.c (expand_vector_operations): Likewise. * tree-vectorizer.c (adjust_simduid_builtins, note_simd_array_uses, execute_vect_slp): Likewise. * tree-vrp.c (check_all_array_refs, remove_range_assertions, vrp_initialize, identify_jump_threads, instrument_memory_accesses): Likewise. * ubsan.c (ubsan_pass): Likewise. * value-prof.c (verify_histograms, gimple_value_profile_transformations, gimple_find_values_to_profile): Likewise. * var-tracking.c (vt_find_locations, dump_dataflow_sets, vt_emit_notes, vt_initialize, delete_debug_insns, vt_finalize): Likewise. gcc/testsuite/ * g++.dg/plugin/selfassign.c (execute_warn_self_assign): Eliminate use of FOR_EACH_BB in favor of FOR_EACH_BB_FN, to make use of cfun explicit. * gcc.dg/plugin/selfassign.c (execute_warn_self_assign): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205828 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR rtl-optimization/54300rearnsha2013-12-092-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/ PR rtl-optimization/54300 * regcprop.c (copyprop_hardreg_forward_1): Ensure any unused outputs in a single-set are killed from the value chains. gcc/testsuite: PR rtl-optimization/54300 * gcc.target/arm/pr54300.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205807 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-09 Martin Jambor <mjambor@suse.cz>jamborm2013-12-096-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | * gcc.c-torture/compile/pr39834.c: Remove optimization level option. * gcc.c-torture/compile/pr48929.c: Likewise. * gcc.c-torture/compile/pr55569.c: Likewise. * gcc.c-torture/compile/sra-1.c: Likewise. * gcc.c-torture/compile/pr45085.c: Moved to... * gcc.dg/tree-ssa/pr45085.c: ...here, added compile dg-do. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205806 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR sanitizer/59415mpolacek2013-12-092-0/+13
| | | | | | | | | | | | | | | | | | | | * vtable-verify.c (verify_bb_vtables): Check the return value of gimple_call_fn. Use is_gimple_call instead of gimple_code. testsuite/ * g++.dg/ubsan/pr59415.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205805 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-09 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-12-092-0/+14
| | | | | | | | | | | | | | | | PR c++/52707 * g++.dg/cpp0x/deleted2.C: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205801 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-09 Kyrylo Tkachov <kyrylo.tkachov@arm.com>ktkachov2013-12-092-3/+7
| | | | | | | | | | | | | | * gcc.dg/tree-ssa/loop-31.c: Update scan pattern. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205800 138bc75d-0d04-0410-961f-82ee72b054a4
| * gcc/testsuite/rsandifo2013-12-092-2/+8
| | | | | | | | | | | | | | | | * lib/asan-dg.exp (asan-gtest): Remove expected output from the pass/fail line and add it to the log instead. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205799 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR target/52898olegendo2013-12-082-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR target/51697 * common/config/sh/sh-common.c (sh_option_optimization_table): Remove OPT_mcbranchdi entry. * config/sh/sh.opt (mcbranchdi, mcmpeqdi): Mark as undocumented and emit a warning. * config/sh/sh.c (sh_option_override): Initialize TARGET_CBRANCHDI4 and TARGET_CMPEQDI_T variables. * doc/invoke.texi (SH options): Undocument -mcbranchdi and -mcmpeqdi. PR target/52898 PR target/51697 * gcc.target/sh/pr51697.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205794 138bc75d-0d04-0410-961f-82ee72b054a4
| * * gcc.dg/macro-fusion-1.c: Cleanup sched2 rtl dump.uros2013-12-085-2/+17
| | | | | | | | | | | | | | | | | | | | * gcc.dg/macro-fusion-2.c: Ditto. * gcc.dg/vect/vect-simd-clone-10a.c: Cleanup vect tree dump. * gcc.dg/vect/vect-simd-clone-12a.c: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205792 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-08 Tobias Burnus <burnus@net-b.de>burnus2013-12-089-16/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Janus Weil <janus@gcc.gnu.org> PR fortran/58099 PR fortran/58676 PR fortran/41724 * resolve.c (gfc_resolve_intrinsic): Set elemental/pure. (resolve_fl_procedure): Reject pure dummy procedures/procedure pointers. (gfc_explicit_interface_required): Don't require a match of ELEMENTAL for intrinsics. 2013-12-08 Tobias Burnus <burnus@net-b.de> PR fortran/58099 PR fortran/58676 PR fortran/41724 * gfortran.dg/elemental_subroutine_8.f90: New. * gfortran.dg/proc_decl_9.f90: Add ELEMENTAL to make valid. * gfortran.dg/proc_ptr_11.f90: Ditto. * gfortran.dg/proc_ptr_result_8.f90: Ditto. * gfortran.dg/proc_ptr_32.f90: Update dg-error. * gfortran.dg/proc_ptr_33.f90: Ditto. * gfortran.dg/proc_ptr_result_1.f90: Add abstract interface which is not elemental. * gfortran.dg/proc_ptr_result_7.f90: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205791 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-07 Janus Weil <janus@gcc.gnu.org>janus2013-12-072-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/59414 * resolve.c (resolve_specific_f0): Handle CLASS-valued functions. 2013-12-07 Janus Weil <janus@gcc.gnu.org> PR fortran/59414 * gfortran.dg/class_result_2.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205785 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR tree-optimization/59388jakub2013-12-062-0/+16
| | | | | | | | | | | | | | | | | | | | * tree-ssa-reassoc.c (update_range_test): If op == range->exp, gimplify tem after stmt rather than before it. * gcc.c-torture/execute/pr59388.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205761 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-06 Dominique d'Humieres <dominiq@lps.ens.fr>mrs2013-12-066-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | PR testsuite/59043 * g++.dg/pubtypes.C: Adjust the regular expression. * gcc.dg/pubtypes-1.c: Likewise. * gcc.dg/pubtypes-2.c: Likewise. * gcc.dg/pubtypes-3.c: Likewise. * gcc.dg/pubtypes-4.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205758 138bc75d-0d04-0410-961f-82ee72b054a4
| * Fix dg options to vect-nop-move.c.belagod2013-12-062-1/+6
| | | | | | | | | | | | | | | | | | | | | | 2013-12-06 Tejas Belagod <tejas.belagod@arm.com> testsuite/ * gcc.dg/vect/vect-nop-move.c: Fix dg options. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205755 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR target/59405uros2013-12-062-9/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * config/i386/i386.c (type_natural_mode): Properly handle size 8 for !TARGET_64BIT. testsuite/ChangeLog: PR target/59405 * gcc.target/i386/pr59405.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205753 138bc75d-0d04-0410-961f-82ee72b054a4
| * [ARM] Add __builtin_trap support for A32ibolton2013-12-063-0/+28
| | | | | | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205749 138bc75d-0d04-0410-961f-82ee72b054a4
| * PR target/59316ebotcazou2013-12-063-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config/sparc/sparc.h (SPARC_LOW_FE_EXCEPT_VALUES): Define. * config/sparc/sol2.h (SPARC_LOW_FE_EXCEPT_VALUES): Redefine. * config/sparc/sparc.c (TARGET_INIT_BUILTINS): Move around. (TARGET_BUILTIN_DECL): Define. (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Likewise. (sparc32_initialize_trampoline): Adjust call to gen_flush. (enum sparc_builtins): New enumeral type. (sparc_builtins): New static array. (sparc_builtins_icode): Likewise. (def_builtin): Accept a separate icode and save the result. (def_builtin_const): Likewise. (sparc_fpu_init_builtins): New function. (sparc_vis_init_builtins): Pass the builtin code. (sparc_init_builtins): Call it if TARGET_FPU. (sparc_builtin_decl): New function. (sparc_expand_builtin): Deal with SPARC_BUILTIN_{LD,ST}FSR. (sparc_handle_vis_mul8x16): Use the builtin code. (sparc_fold_builtin): Likewise. Deal with SPARC_BUILTIN_{LD,ST}FSR and SPARC_BUILTIN_PDISTN. (compound_expr): New helper function. (sparc_atomic_assign_expand_fenv): New function. * config/sparc/sparc.md (unspecv): Reorder values, add UNSPECV_LDFSR and UNSPECV_STFSR. (flush, flushdi): Merge into single pattern. (ldfsr): New instruction. (stfsr): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205735 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-06 Richard Biener <rguenther@suse.de>rguenth2013-12-062-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR tree-optimization/59058 * tree-vectorizer.h (struct _loop_vec_info): Add num_itersm1 member. (LOOP_VINFO_NITERSM1): New macro. * tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): Express the vector loop entry test in terms of scalar latch executions. (vect_do_peeling_for_alignment): Update LOOP_VINFO_NITERSM1. * tree-vect-loop.c (vect_get_loop_niters): Also return the number of latch executions. (new_loop_vec_info): Initialize LOOP_VINFO_NITERSM1. (vect_analyze_loop_form): Likewise. (vect_generate_tmps_on_preheader): Compute the number of vectorized iterations differently. * gcc.dg/torture/pr59058.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205730 138bc75d-0d04-0410-961f-82ee72b054a4
| * 2013-12-05 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-12-052-2/+6
| | | | | | | | | | | | | | * g++.dg/warn/pr15774-1.C: Adjust expected message. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205722 138bc75d-0d04-0410-961f-82ee72b054a4