rguenth [Mon, 18 Jan 2016 14:25:56 +0000 (14:25 +0000)]
2016-01-18 Richard Biener <rguenther@suse.de>
PR tree-optimization/69297
* tree-vect-slp.c (vect_bb_slp_scalar_cost): Count each scalar
stmt at most once.
(vect_bb_vectorization_profitable_p): Clear visited flag again.
* gcc.dg/vect/costmodel/x86_64/costmodel-pr69297.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232519
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Mon, 18 Jan 2016 14:14:35 +0000 (14:14 +0000)]
gcc/
2016-01-18 Yuri Rumyantsev <ysrumyan@gmail.com>
PR middle-end/68542
* fold-const.c (fold_binary_op_with_conditional_arg): Bail out for case
of mixind vector and scalar types.
(fold_relational_const): Add handling of vector
comparison with boolean result.
* tree-cfg.c (verify_gimple_comparison): Add argument CODE, allow
comparison of vector operands with boolean result for EQ/NE only.
(verify_gimple_assign_binary): Adjust call for verify_gimple_comparison.
(verify_gimple_cond): Likewise.
* tree-vrp.c (extract_code_and_val_from_cond_with_ops): Modify check on
valid type of VAL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232518
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Mon, 18 Jan 2016 13:30:43 +0000 (13:30 +0000)]
Handle Octeon 3 not supporting MIPS paired-single instructions.
The Octeon 3 processor does not support the MIPS paired-single
instructions. This results in illegal instruction errors in the
testsuite when vectorization tests try to use those instructions.
This patch teaches the compiler about that lack of support, so that
warnings are given when -mpaired-single (or something implying it) is
used when compiling for such a processor. I chose to test
TARGET_OCTEON as the simplest conditional; since the older Octeon
processors don't support hard float at all, I don't think the choice
matters for them. Tests that then failed with the warning were
updated to disable them for Octeon.
Tested with no regressions for cross to mips64el-linux-gnu (Octeon
3).
gcc:
* config/mips/mips.h (ISA_HAS_PAIRED_SINGLE): Require
!TARGET_OCTEON.
gcc/testsuite:
* gcc.target/mips/mips-3d-1.c: Use forbid_cpu=octeon.* in
dg-options.
* gcc.target/mips/mips-3d-2.c: Likewise.
* gcc.target/mips/mips-3d-3.c: Likewise.
* gcc.target/mips/mips-3d-4.c: Likewise.
* gcc.target/mips/mips-3d-5.c: Likewise.
* gcc.target/mips/mips-3d-6.c: Likewise.
* gcc.target/mips/mips-3d-7.c: Likewise.
* gcc.target/mips/mips-3d-8.c: Likewise.
* gcc.target/mips/mips-3d-9.c: Likewise.
* gcc.target/mips/mips-ps-1.c: Likewise.
* gcc.target/mips/mips-ps-2.c: Likewise.
* gcc.target/mips/mips-ps-3.c: Likewise.
* gcc.target/mips/mips-ps-4.c: Likewise.
* gcc.target/mips/mips-ps-5.c: Likewise.
* gcc.target/mips/mips-ps-6.c: Likewise.
* gcc.target/mips/mips-ps-7.c: Likewise.
* gcc.target/mips/mips-ps-type.c: Likewise.
* gcc.target/mips/mips-ps-type-2.c: Likewise.
* gcc.target/mips/mips16-attributes-6.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232517
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 18 Jan 2016 13:03:54 +0000 (13:03 +0000)]
2016-01-18 Richard Biener <rguenther@suse.de>
PR middle-end/69308
* gimple.c (gimple_could_trap_p_1): Handle GIMPLE_COND.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232516
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 18 Jan 2016 12:53:03 +0000 (12:53 +0000)]
Add oacc kernels test in libgomp
2016-01-18 Tom de Vries <tom@codesourcery.com>
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: New test.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
Same.
* testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232515
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 18 Jan 2016 12:52:53 +0000 (12:52 +0000)]
Add oacc kernels tests in goacc
2016-01-18 Tom de Vries <tom@codesourcery.com>
* c-c++-common/goacc/kernels-counter-vars-function-scope.c: New test.
* c-c++-common/goacc/kernels-double-reduction.c: New test.
* c-c++-common/goacc/kernels-empty.c: New test.
* c-c++-common/goacc/kernels-eternal.c: New test.
* c-c++-common/goacc/kernels-loop-2.c: New test.
* c-c++-common/goacc/kernels-loop-3.c: New test.
* c-c++-common/goacc/kernels-loop-data-2.c: New test.
* c-c++-common/goacc/kernels-loop-data-enter-exit-2.c: New test.
* c-c++-common/goacc/kernels-loop-data-enter-exit.c: New test.
* c-c++-common/goacc/kernels-loop-data-update.c: New test.
* c-c++-common/goacc/kernels-loop-data.c: New test.
* c-c++-common/goacc/kernels-loop-g.c: New test.
* c-c++-common/goacc/kernels-loop-mod-not-zero.c: New test.
* c-c++-common/goacc/kernels-loop-n.c: New test.
* c-c++-common/goacc/kernels-loop-nest.c: New test.
* c-c++-common/goacc/kernels-loop.c: New test.
* c-c++-common/goacc/kernels-noreturn.c: New test.
* c-c++-common/goacc/kernels-one-counter-var.c: New test.
* c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c: New test.
* c-c++-common/goacc/kernels-reduction.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232514
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 18 Jan 2016 12:52:42 +0000 (12:52 +0000)]
Add pass_parallelize_loops to pass_oacc_kernels
2016-01-18 Tom de Vries <tom@codesourcery.com>
* passes.def: Add pass_parallelize_loops to pass_oacc_kernels.
* gcc.dg/autopar/outer-1.c: Update for new parloops instantiation.
* gcc.dg/autopar/outer-2.c: Same.
* gcc.dg/autopar/outer-3.c: Same.
* gcc.dg/autopar/outer-4.c: Same.
* gcc.dg/autopar/outer-5.c: Same.
* gcc.dg/autopar/outer-6.c: Same.
* gcc.dg/autopar/parallelization-1.c: Same.
* gcc.dg/autopar/parloops-exit-first-loop-alt-2.c: Same.
* gcc.dg/autopar/parloops-exit-first-loop-alt-3.c: Same.
* gcc.dg/autopar/parloops-exit-first-loop-alt-4.c: Same.
* gcc.dg/autopar/parloops-exit-first-loop-alt-5.c: Same.
* gcc.dg/autopar/parloops-exit-first-loop-alt-6.c: Same.
* gcc.dg/autopar/parloops-exit-first-loop-alt-7.c: Same.
* gcc.dg/autopar/parloops-exit-first-loop-alt-pr66652.c: Same.
* gcc.dg/autopar/parloops-exit-first-loop-alt.c: Same.
* gcc.dg/autopar/pr39500-1.c: Same.
* gcc.dg/autopar/pr39500-2.c: Same.
* gcc.dg/autopar/pr46193.c: Same.
* gcc.dg/autopar/pr46194.c: Same.
* gcc.dg/autopar/pr49580.c: Same.
* gcc.dg/autopar/pr49960-1.c: Same.
* gcc.dg/autopar/pr49960.c: Same.
* gcc.dg/autopar/pr68373.c: Same.
* gcc.dg/autopar/reduc-1.c: Same.
* gcc.dg/autopar/reduc-1char.c: Same.
* gcc.dg/autopar/reduc-1short.c: Same.
* gcc.dg/autopar/reduc-2.c: Same.
* gcc.dg/autopar/reduc-2char.c: Same.
* gcc.dg/autopar/reduc-2short.c: Same.
* gcc.dg/autopar/reduc-3.c: Same.
* gcc.dg/autopar/reduc-4.c: Same.
* gcc.dg/autopar/reduc-6.c: Same.
* gcc.dg/autopar/reduc-7.c: Same.
* gcc.dg/autopar/reduc-8.c: Same.
* gcc.dg/autopar/reduc-9.c: Same.
* gcc.dg/autopar/uns-outer-4.c: Same.
* gcc.dg/autopar/uns-outer-5.c: Same.
* gcc.dg/autopar/uns-outer-6.c: Same.
* gfortran.dg/parloops-exit-first-loop-alt-2.f95: Same.
* gfortran.dg/parloops-exit-first-loop-alt.f95: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232513
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 18 Jan 2016 12:52:32 +0000 (12:52 +0000)]
Add oacc_kernels_p argument to pass_parallelize_loops
2016-01-18 Tom de Vries <tom@codesourcery.com>
* omp-low.c (set_oacc_fn_attrib): Make extern.
* omp-low.h (set_oacc_fn_attrib): Declare.
* tree-parloops.c (struct reduction_info): Add reduc_addr field.
(create_call_for_reduction_1): Handle case that reduc_addr is non-NULL.
(create_parallel_loop, gen_parallel_loop, try_create_reduction_list):
Add and handle function parameter oacc_kernels_p.
(find_reduc_addr, get_omp_data_i_param): New function.
(ref_conflicts_with_region, oacc_entry_exit_ok_1)
(oacc_entry_exit_single_gang, oacc_entry_exit_ok): New function.
(parallelize_loops): Add and handle function parameter oacc_kernels_p.
Calculate dominance info. Skip loops that are not in a kernels region
in oacc_kernels_p mode. Skip inner loops of parallelized loops.
(pass_parallelize_loops::execute): Call parallelize_loops with
oacc_kernels_p argument.
(pass_parallelize_loops::clone, pass_parallelize_loops::set_pass_param):
New member function.
(pass_parallelize_loops::bool oacc_kernels_p): New member var.
* passes.def: Add argument to pass_parallelize_loops instantation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232512
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 18 Jan 2016 12:52:23 +0000 (12:52 +0000)]
Allow pass_parallelize_loops to be run outside the loop pipeline
2016-01-18 Tom de Vries <tom@codesourcery.com>
* tree-parloops.c (pass_parallelize_loops::execute): Allow
pass_parallelize_loops to be run outside the loop pipeline.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232511
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Mon, 18 Jan 2016 12:51:36 +0000 (12:51 +0000)]
Un-XFAIL ssa-dom-cse-2.c for most platforms
* gcc.dg/tree-ssa/ssa-dom-cse-2.c: Remove XFAIL for powerpc(32), hppa,
aarch64, sparc, s390. Add --param sra-max-scalarization-size-Ospeed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232510
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Mon, 18 Jan 2016 12:46:54 +0000 (12:46 +0000)]
Enhance SCEV to follow copies of SSA_NAMEs.
(Fixes missed vectorization of gcc.dg/vect/pr65947-2.c.)
* tree-scalar-evolution.c (follow_copies_to_constant): New.
(analyze_initial_condition, analyze_scalar_evolution_1): Call previous.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232509
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Mon, 18 Jan 2016 12:40:43 +0000 (12:40 +0000)]
Equate MEM_REFs and ARRAY_REFs in tree-ssa-scopedtables.c
PR target/63679
gcc/:
* tree-ssa-scopedtables.c (avail_expr_hash): Hash MEM_REF and ARRAY_REF
using get_ref_base_and_extent.
(equal_mem_array_ref_p): New.
(hashable_expr_equal_p): Add call to previous.
gcc/testsuite/:
* gcc.dg/tree-ssa/ssa-dom-cse-5.c: New.
* gcc.dg/tree-ssa/ssa-dom-cse-6.c: New.
* gcc.dg/tree-ssa/ssa-dom-cse-7.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232508
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 18 Jan 2016 12:34:22 +0000 (12:34 +0000)]
Fix PR number in changelog for commit r232504
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232507
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Mon, 18 Jan 2016 12:29:02 +0000 (12:29 +0000)]
Make SRA scalarize constant-pool loads
PR target/63679
gcc/ChangeLog:
* tree-sra.c (disqualified_constants, constant_decl_p): New.
(sra_initialize): Allocate disqualified_constants.
(sra_deinitialize): Free disqualified_constants.
(disqualify_candidate): Update disqualified_constants when appropriate.
(create_access): Scan for constant-pool entries as we go along.
(scalarizable_type_p): Add check against type_contains_placeholder_p.
(maybe_add_sra_candidate): Allow constant-pool entries.
(load_assign_lhs_subreplacements): Bind debug for constant pool vars.
(initialize_constant_pool_replacements): New.
(sra_modify_assign): Avoid mangling assignments created by previous,
and don't generate writes into constant pool.
(sra_modify_function_body): Call initialize_constant_pool_replacements.
gcc/testsuite/:
* gcc.dg/tree-ssa/sra-17.c: New.
* gcc.dg/tree-ssa/sra-18.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232506
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 18 Jan 2016 12:19:31 +0000 (12:19 +0000)]
2016-01-18 Richard Biener <rguenther@suse.de>
PR lto/69337
* lto-symtab.c (lto_symtab_merge): Return early for mismatched
function vs. variable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232505
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 18 Jan 2016 11:43:37 +0000 (11:43 +0000)]
Fix construction of std::function from null pointer-to-member
PR libstdc++/69293
* include/std/functional (_Function_base::_M_not_empty_function):
Change overloads for pointers to take arguments by value.
* testsuite/20_util/function/cons/57465.cc: Add tests for
pointer-to-member cases.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232504
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 18 Jan 2016 11:29:00 +0000 (11:29 +0000)]
* gcc-interface/gigi.h (build_call_raise_column): Adjust prototype.
(build_call_raise_range): Likewise.
(gnat_unsigned_type): Delete.
(gnat_signed_type): Likewise.
(gnat_signed_or_unsigned_type_for): New prototype.
(gnat_unsigned_type_for): New inline function.
(gnat_signed_type_for): Likewise.
* gcc-interface/cuintp.c (build_cst_from_int): Call build_int_cst.
* gcc-interface/decl.c (gnat_to_gnu_entity): Likewise.
(gnat_to_gnu_entity) <E_Array_Type>: Always translate the index types
and compute their base type from that.
<E_Array_Subtype>: Remove duplicate declaration.
* gcc-interface/misc.c (get_array_bit_stride): Call build_int_cst.
* gcc-interface/trans.c (get_type_length): Likewise.
(Attribute_to_gnu): Likewise.
(Loop_Statement_to_gnu): Likewise.
(Call_to_gnu): Likewise.
(gnat_to_gnu): Call build_real, build_int_cst, gnat_unsigned_type_for
and gnat_signed_type_for. Minor tweaks.
(build_binary_op_trapv): Likewise.
(emit_check): Likewise.
(convert_with_check): Likewise.
(Raise_Error_to_gnu): Adjust calls to the build_call_raise family of
functions. Minor tweaks.
(Case_Statement_to_gnu): Remove dead code.
(gnat_to_gnu): Call gnat_unsigned_type_for and gnat_signed_type_for.
(init_code_table): Minor reordering.
* gcc-interface/utils.c (gnat_unsigned_type): Delete.
(gnat_signed_type): Likewise.
(gnat_signed_or_unsigned_type_for): New function.
(unchecked_convert): Use directly the size in the test for precision
vs size adjustments.
(install_builtin_elementary_types): Call gnat_signed_type_for.
* gcc-interface/utils2.c (nonbinary_modular_operation): Call
build_int_cst.
(build_goto_raise): New function taken from...
(build_call_raise): ...here. Call it.
(build_call_raise_column): Add KIND parameter and call it.
(build_call_raise_range): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232503
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 18 Jan 2016 11:24:20 +0000 (11:24 +0000)]
Fix libstdc++ build with -fno-exceptions
PR libstdc++/69340
* src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
Use macros for exception handling and fix unused parameter warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232502
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 18 Jan 2016 11:10:42 +0000 (11:10 +0000)]
* gcc-interface/ada-tree.h (TYPE_IMPLEMENTS_PACKED_ARRAY_P): Rename to
(TYPE_IMPL_PACKED_ARRAY_P): ...this.
(TYPE_CAN_HAVE_DEBUG_TYPE_P): Do not test TYPE_DEBUG_TYPE.
* gcc-interface/decl.c (gnat_to_gnu_entity): Simplify NULL_TREE tests
and tweak gnat_encodings tests throughout.
(initial_value_needs_conversion): Likewise.
(intrin_arglists_compatible_p): Likewise.
* gcc-interface/misc.c (gnat_print_type): Likewise.
(gnat_get_debug_type): Likewise.
(gnat_get_fixed_point_type_info): Likewise.
(gnat_get_array_descr_info): Likewise.
(get_array_bit_stride): Likewise.
(gnat_get_type_bias): Fix formatting.
(enumerate_modes): Likewise.
* gcc-interface/trans.c (gnat_to_gnu): Likewise.
(add_decl_expr): Simplify NULL_TREE test.
(end_stmt_group): Likewise.
(build_binary_op_trapv): Fix formatting.
(get_exception_label): Use switch statement.
(init_code_table): Move around.
* gcc-interface/utils.c (global_bindings_p): Simplify NULL_TREE test.
(gnat_poplevel): Likewise.
(gnat_set_type_context): Likewise.
(defer_or_set_type_context): Fix formatting.
(gnat_pushdecl): Simplify NULL_TREE test.
(maybe_pad_type): Likewise.
(add_parallel_type): Likewise.
(create_range_type): Likewise.
(process_deferred_decl_context): Likewise.
(convert): Likewise.
(def_builtin_1): Likewise.
* gcc-interface/utils2.c (find_common_type): Likewise.
(build_binary_op): Likewise.
(gnat_rewrite_reference): Likewise.
(get_inner_constant_reference): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232501
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Mon, 18 Jan 2016 10:35:56 +0000 (10:35 +0000)]
gcc/
* config/i386/i386.c (scalar_to_vector_candidate_p): Support
andnot instruction.
(scalar_chain::convert_op): Likewise.
* config/i386/i386.md (*andndi3_doubleword): New.
gcc/testsuite/
* gcc.target/i386/pr65105-5.c: Adjust to andn generation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232500
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 18 Jan 2016 10:27:10 +0000 (10:27 +0000)]
PR ada/69219
* gcc-interface/trans.c (check_inlining_for_nested_subprog): Consider
the parent function instead of the current function in order to issue
the warning or the error. Add guard for ignored functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232498
138bc75d-0d04-0410-961f-
82ee72b054a4
amker [Mon, 18 Jan 2016 09:30:10 +0000 (09:30 +0000)]
PR tree-optimization/66797
* gcc.c-torture/execute/pr65447.c: Relax check condition.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232497
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 18 Jan 2016 09:14:14 +0000 (09:14 +0000)]
2016-01-18 Richard Biener <rguenther@suse.de>
PR tree-optimization/69170
* tree-vect-slp.c (vect_build_slp_tree): Verify we are not
building a vector from scalar results of a pattern stmt.
* gcc.dg/torture/pr69170.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232496
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 18 Jan 2016 09:02:42 +0000 (09:02 +0000)]
* haifa-sched.c (autopref_multipass_init): Work around
-Wmaybe-uninitialized warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232495
138bc75d-0d04-0410-961f-
82ee72b054a4
thopre01 [Mon, 18 Jan 2016 03:22:35 +0000 (03:22 +0000)]
2016-01-18 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* config/arm/arm.c (thumb1_reorg): Check that the comparison is
against the constant 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232493
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Mon, 18 Jan 2016 02:43:06 +0000 (02:43 +0000)]
2016-01-17 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/68799
* gimple-ssa-strength-reduction.c (create_phi_basis): Directly
look up phi candidates in the statement-candidate map.
(phi_add_costs): Likewise.
(record_phi_increments): Likewise.
(phi_incr_cost): Likewise.
(ncd_with_phi): Likewise.
(all_phi_incrs_profitable): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232491
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 18 Jan 2016 00:16:11 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232490
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Sun, 17 Jan 2016 22:49:24 +0000 (22:49 +0000)]
* gcc.dg/torture/builtin-integral-1.c: Require c99_runtime.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232487
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Sun, 17 Jan 2016 18:16:42 +0000 (18:16 +0000)]
PR libstdc++/68734
* config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232486
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Sun, 17 Jan 2016 18:07:39 +0000 (18:07 +0000)]
* adaint.c (__gnat_killprocesstree): Avoid -Wparentheses warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232485
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Sun, 17 Jan 2016 18:04:47 +0000 (18:04 +0000)]
* omp-low.c (mark_loops_in_oacc_kernels_region): Work around
-Wmaybe-uninitialized warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232484
138bc75d-0d04-0410-961f-
82ee72b054a4
torvald [Sun, 17 Jan 2016 17:43:37 +0000 (17:43 +0000)]
libstdc++: Fix static_assert.
* src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232483
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 17 Jan 2016 00:16:16 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232480
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Sat, 16 Jan 2016 23:07:34 +0000 (23:07 +0000)]
Revert the accidental checkin
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232476
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Sat, 16 Jan 2016 23:06:43 +0000 (23:06 +0000)]
2016-01-16 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/invoke.texi (Invoking GCC): Add new section to menu.
(Option Summary): Update to reflect new section and moved options.
(C++ Dialect Options): Move -fvtable-verify and related options.
(Debugging Options): Move Sanitizer, Pointer Bounds Checker,
and profiling-related options.
(Optimization Options): Move profile generation options and
-fstack-protector and related options.
(Instrumentation Options): New section incorporating moved options.
(Code Generation Options): Move -finstrument-functions and
related options, -fstack-check, -fstack-limit*, and -fbounds-check.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232475
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Sat, 16 Jan 2016 22:52:21 +0000 (22:52 +0000)]
Add __int128 symbols to x32 aseline_symbols.txt
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
__int128 symbols.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232474
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sat, 16 Jan 2016 22:19:05 +0000 (22:19 +0000)]
Move pass_expand_omp_ssa out of pass_parallelize_loops
2016-01-16 Tom de Vries <tom@codesourcery.com>
* passes.def: Move pass_expand_omp_ssa out of pass_parallelize_loops.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232473
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sat, 16 Jan 2016 22:18:56 +0000 (22:18 +0000)]
Release_defs in expand_omp_atomic_fetch_op
2016-01-16 Tom de Vries <tom@codesourcery.com>
* omp-low.c (expand_omp_atomic_fetch_op): Release defs of update stmt.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232472
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sat, 16 Jan 2016 22:18:47 +0000 (22:18 +0000)]
Add goacc/kernels-alias-ipa-pta-4.c
2016-01-16 Tom de Vries <tom@codesourcery.com>
* c-c++-common/goacc/kernels-alias-ipa-pta-4.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232471
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sat, 16 Jan 2016 22:18:37 +0000 (22:18 +0000)]
Move gcc.dg/parloops-exit-first-loop-alt-*.c to gcc.dg/autopar
2016-01-16 Tom de Vries <tom@codesourcery.com>
* gcc.dg/parloops-exit-first-loop-alt.c: Move ...
* gcc.dg/autopar/parloops-exit-first-loop-alt.c: ... here. Remove
redundant dg-require-effective-target pthread.
* gcc.dg/parloops-exit-first-loop-alt-2.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-3.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-4.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-5.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-6.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-7.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-pr66652.c: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232470
138bc75d-0d04-0410-961f-
82ee72b054a4
torvald [Sat, 16 Jan 2016 22:08:41 +0000 (22:08 +0000)]
libitm: Ensure proxy privatization safety.
* method-gl.cc (gl_wt_dispatch::trycommit): Ensure proxy privatization
safety.
* method-ml.cc (ml_wt_dispatch::trycommit): Likewise.
* libitm/testsuite/libitm.c/priv-1.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232469
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Sat, 16 Jan 2016 20:04:33 +0000 (20:04 +0000)]
PR target/68609
* gcc.target/powerpc/recip-6.c: Enable on AIX.
* gcc.target/powerpc/recip-7.c: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232468
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sat, 16 Jan 2016 11:03:18 +0000 (11:03 +0000)]
Optimise hash_table::empty
Calling redirect_edge_var_map_empty after each pass was slowing things
down because hash_table::empty () cleared all slots even if the hash
table was already empty.
Tested on x86_64-linux-gnu, where it gives a 1% compile time improvement
for fold-const.ii at -O and -O2.
gcc/
* hash-table.h (hash_table::empty): Turn into an inline wrapper
that checks whether the table is already empty. Rename the
original implementation to...
(hash_table::empty_slot): ...this new private function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232467
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Sat, 16 Jan 2016 09:44:23 +0000 (09:44 +0000)]
Clean up some minor white space issues in trans-decl.c and trans-expr.c
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232466
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Sat, 16 Jan 2016 04:38:19 +0000 (04:38 +0000)]
PR diagnostic/68899: fix read-beyond-buffer when printing very wide source lines
gcc/ChangeLog:
PR diagnostic/68899
* diagnostic-show-locus.c (layout::print_source_line): Move x
offset of line until after call to
get_line_width_without_trailing_whitespace.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232465
138bc75d-0d04-0410-961f-
82ee72b054a4
ppalka [Sat, 16 Jan 2016 02:37:09 +0000 (02:37 +0000)]
Fix PR c++/69091 (ICE with operator overload having 'auto' return type)
gcc/cp/ChangeLog:
PR c++/69091
* pt.c (type_dependent_expression_p): For a function template
specialization, a type is dependent iff any of its template
arguments are.
gcc/testsuite/ChangeLog:
PR c++/69091
* g++.dg/template/pr69091.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232463
138bc75d-0d04-0410-961f-
82ee72b054a4
ppalka [Sat, 16 Jan 2016 02:30:14 +0000 (02:30 +0000)]
Fix logic bug in Cilk Plus array expansion
gcc/cp/ChangeLog:
* cp-array-notation.c (cp_expand_cond_array_notations): Return
error_mark_node only if find_rank failed, not if it was
successful.
gcc/testsuite/ChangeLog:
* c-c++-common/cilk-plus/AN/an-if.c: Check that the original
dump does not contain an error_mark_node.
* c-c++-common/cilk-plus/CK/pr60469.c: Likewise.
* c-c++-common/cilk-plus/AN/fn_ptr-2.c: New xfail'd test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232462
138bc75d-0d04-0410-961f-
82ee72b054a4
ppalka [Sat, 16 Jan 2016 02:27:36 +0000 (02:27 +0000)]
Fix PR c++/68936
gcc/cp/ChangeLog:
PR c++/68936
* tree.c (build_min_non_dep_call_vec): Don't retain the
KOENIG_LOOKUP_P flag of the non-dependent expression that's
been built.
(build_min_non_dep_op_overload): Instead, do it here.
gcc/testsuite/ChangeLog:
PR c++/68936
* g++.dg/template/pr68936.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232461
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 16 Jan 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232460
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 15 Jan 2016 23:12:13 +0000 (23:12 +0000)]
Use static assertion for uses-allocator construction
PR libstdc++/69293
* include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
static assertion that type is constructible from the arguments.
* testsuite/20_util/scoped_allocator/69293_neg.cc: New.
* testsuite/20_util/uses_allocator/69293_neg.cc: New.
* testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232457
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 15 Jan 2016 23:04:23 +0000 (23:04 +0000)]
PR target/68609
* gcc.target/powerpc/recip-1.c: Adjust for Goldschmidt's Algorithm.
* gcc.target/powerpc/recip-2.c: Same.
* gcc.target/powerpc/recip-3.c: Same.
* gcc.target/powerpc/recip-4.c: Same.
* gcc.target/powerpc/recip-sqrtf.c: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232456
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 15 Jan 2016 23:00:30 +0000 (23:00 +0000)]
PR libstdc++/69294 Check for isinf and isnan on AIX
PR libstdc++/69294
* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
and isnan on AIX. Quote variables.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232455
138bc75d-0d04-0410-961f-
82ee72b054a4
torvald [Fri, 15 Jan 2016 22:42:41 +0000 (22:42 +0000)]
libstdc++: Make certain exceptions transaction_safe.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232454
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 15 Jan 2016 22:32:05 +0000 (22:32 +0000)]
PR tree-optimization/69270
* tree-ssanames.c (ssa_name_has_boolean_range): Moved here from
tree-ssa-dom.c. Improve test for [0..1] ranve from VRP.
* tree-ssa-dom.c (ssa_name_has_boolean_range): Remove.
* tree-ssanames.h (ssa_name_has_boolean_range): Prototype.
* tree-ssa-uncprop.c (associate_equivalences_with_edges): Use
ssa_name_has_boolean_range and constant_boolean_node.
PR tree-optimization/69270
* gcc.dg/tree-ssa/pr69270-2.c: New test.
* gcc.dg/tree-ssa/pr69270-3.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232453
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Fri, 15 Jan 2016 22:26:02 +0000 (22:26 +0000)]
2016-01-15 Steve Ellcey <sellcey@imgtec.com>
* include/ext/random.tcc: Use __builtin_isfinite instead of
std::isfinite.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232452
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 15 Jan 2016 20:57:54 +0000 (20:57 +0000)]
PR bootstrap/68271
* parser.h (cp_token): Remove pragma_kind field. Add comment
with number of unused bits.
* parser.c (eof_token): Remove pragma_kind field initializer.
(cp_lexer_get_preprocessor_token): Don't set pragma_kind
field, don't clear CPP_PRAGMA u.value.
(cp_parser_pragma_kind): New function.
(cp_parser_omp_sections_scope, cp_parser_oacc_kernels_parallel,
cp_parser_omp_construct, cp_parser_initial_pragma,
cp_parser_pragma): Use cp_parser_pragma_kind instead of accessing
pragma_kind field.
* c-pragma.c (c_register_pragma_1): Adjust comment to note that
C++ FE no longer has limit on number of pragmas.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232451
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Fri, 15 Jan 2016 20:33:58 +0000 (20:33 +0000)]
2016-01-15 Paul Thomas <pault@gcc.gnu.org>
PR fortran/64324
* resolve.c (check_uop_procedure): Prevent deferred length
characters from being trapped by assumed length error.
PR fortran/49630
PR fortran/54070
PR fortran/60593
PR fortran/60795
PR fortran/61147
PR fortran/64324
* trans-array.c (gfc_conv_scalarized_array_ref): Pass decl for
function as well as variable expressions.
(gfc_array_init_size): Add 'expr' as an argument. Use this to
correctly set the descriptor dtype for deferred characters.
(gfc_array_allocate): Add 'expr' to the call to
'gfc_array_init_size'.
* trans.c (gfc_build_array_ref): Expand logic for setting span
to include indirect references to character lengths.
* trans-decl.c (gfc_get_symbol_decl): Ensure that deferred
result char lengths that are PARM_DECLs are indirectly
referenced both for directly passed and by reference.
(create_function_arglist): If the length type is a pointer type
then store the length as the 'passed_length' and make the char
length an indirect reference to it.
(gfc_trans_deferred_vars): If a character length has escaped
being set as an indirect reference, return it via the 'passed
length'.
* trans-expr.c (gfc_conv_procedure_call): The length of
deferred character length results is set TREE_STATIC and set to
zero.
(gfc_trans_assignment_1): Do not fix the rse string_length if
it is a variable, a parameter or an indirect reference. Add the
code to trap assignment of scalars to unallocated arrays.
* trans-stmt.c (gfc_trans_allocate): Remove 'def_str_len' and
all references to it. Instead, replicate the code to obtain a
explicitly defined string length and provide a value before
array allocation so that the dtype is correctly set.
trans-types.c (gfc_get_character_type): If the character length
is a pointer, use the indirect reference.
2016-01-15 Paul Thomas <pault@gcc.gnu.org>
PR fortran/49630
* gfortran.dg/deferred_character_13.f90: New test for the fix
of comment 3 of the PR.
PR fortran/54070
* gfortran.dg/deferred_character_8.f90: New test
* gfortran.dg/allocate_error_5.f90: New test
PR fortran/60593
* gfortran.dg/deferred_character_10.f90: New test
PR fortran/60795
* gfortran.dg/deferred_character_14.f90: New test
PR fortran/61147
* gfortran.dg/deferred_character_11.f90: New test
PR fortran/64324
* gfortran.dg/deferred_character_9.f90: New test
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232450
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 15 Jan 2016 20:20:58 +0000 (20:20 +0000)]
* intrinsics/execute_command_line.c (set_cmdstat): Use "%s", msg
instead of msg to avoid -Wformat-security warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232449
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 15 Jan 2016 20:15:44 +0000 (20:15 +0000)]
* adaint.c (__gnat_locate_exec_on_path): Use const char * instead
of char * for path_val to avoid warnings.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232448
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 15 Jan 2016 19:56:26 +0000 (19:56 +0000)]
* task.c (GOMP_PLUGIN_target_task_completion): Add missing return.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232447
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 15 Jan 2016 19:33:33 +0000 (19:33 +0000)]
2016-01-15 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/69030
* lra-spills.c (remove_pseudos): Check nrefs and make the function
returning bool.
(spill_pseudos): Delete debug insn for dead pseudo.
(lra_spill): Initiate spill_hard_reg and slots memory separately.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232445
138bc75d-0d04-0410-961f-
82ee72b054a4
jiwang [Fri, 15 Jan 2016 17:50:01 +0000 (17:50 +0000)]
[AArch64] Remove TODO (redundant type conversions) in arm_neon.h
gcc/
* config/aarch64/aarch64-builtins.c (aarch64_types_unopus_qualifiers):
New.
(TYPES_UNOPUS): Likewise.
* config/aarch64/aarch64-simd-builtins.def (lbtruncuv2sf): Correct
builtin type, from UNOP to UNOPUS.
(lbtruncuv4sf): Likewise.
(lbtruncuv2df): Likewise.
(lrounduv2sf): Likewise.
(lrounduv4sf): Likewise.
(lrounduv2df): Likewise.
(lroundusf): Likewise.
(lroundusf): Likewise.
(lceiluv2sf): Likewise.
(lceiluv4sf): Likewise.
(lceiluv2df): Likewise.
(lceilusf): Likewise.
(lceiludf): Likewise.
(lflooruv2sf): Likewise.
(lflooruv4sf): Likewise.
(lflooruv2df): Likewise.
(lfloorusf): Likewise.
(lfloorudf): Likewise.
(lfrintnuv2sf): Likewise.
(lfrintnuv4sf): Likewise.
(lfrintnuv2df): Likewise.
(lfrintnusf): Likewise.
(lfrintnudf): Likewise.
* config/aarch64/arm_neon.h (vcvt_u32_f32): Remove unncessary type
conversion.
(vcvtq_u32_f32): Likewise.
(vcvtq_u64_f64): Likewise.
(vcvta_u32_f32): Likewise.
(vcvtaq_u32_f32): Likewise.
(vcvtaq_u64_f64): Likewise.
(vcvtm_u32_f32): Likewise.
(vcvtmq_u32_f32): Likewise.
(vcvtmq_u64_f64): Likewise.
(vcvtn_u32_f32): Likwise.
(vcvtnq_u32_f32): Likewise.
(vcvtnq_u64_f64): Likewise.
(vcvtp_u32_f32): Likewise.
(vcvtpq_u32_f32): Likewise.
(vcvtpq_u64_f64): Likewise.
(vcvtmd_u64_f64): Likewise.
(vcvtms_u32_f32): Likewise.
(vcvtad_u64_f64): Likewise.
(vcvtas_u32_f32): Likewise.
(vcvtnd_u64_f64): Likewise.
(vcvtns_u32_f32): Likewise.
(vcvtpd_u64_f64): Likewise.
(vcvtps_u32_f32): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232444
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Fri, 15 Jan 2016 17:30:12 +0000 (17:30 +0000)]
[AArch64] Handle CSEL of zero_extended operands in rtx costs
* config/aarch64/aarch64.c (aarch64_if_then_else_costs): Handle
CSEL of zero_extended registers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232442
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Fri, 15 Jan 2016 17:29:16 +0000 (17:29 +0000)]
[AArch64] Handle compare of zero_extract form of TST-immediate in rtx costs
* config/aarch64/aarch64.c (aarch64_rtx_costs, COMPARE case):
Handle COMPARE of ZERO_EXTRACT against zero form of TST-immediate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232441
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Fri, 15 Jan 2016 17:27:41 +0000 (17:27 +0000)]
[AArch64] Properly reject invalid attribute strings
* config/aarch64/aarch64.c (aarch64_process_one_target_attr): Return
false when argument string is not found in the attributes table
at all.
* gcc.target/aarch64/target_attr_17.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232440
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 15 Jan 2016 16:38:08 +0000 (16:38 +0000)]
PR target/68609
* config/rs6000/rs6000.c (rs6000_emit_msub): Delete.
(rs6000_emit_swsqrt): Convert to Goldschmidt's Algorithm
* config/rs6000/rs6000.md (sqrt<mode>2): Limit swsqrt to high
precision estimate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232439
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 15 Jan 2016 15:57:17 +0000 (15:57 +0000)]
PR c++/68847
* call.c (build_cxx_call): Use fold_non_dependent_expr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232438
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 15 Jan 2016 15:57:12 +0000 (15:57 +0000)]
* typeck2.c (cxx_incomplete_type_diagnostic): Use the location of
value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232437
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 15 Jan 2016 15:57:07 +0000 (15:57 +0000)]
PR c++/69257
* typeck.c (decay_conversion): Don't call mark_rvalue_use for
array/function-to-pointer conversion. Call
complete_type_or_maybe_complain for lvalue-to-rvalue conversion.
* call.c (convert_like_real): Print call context if
decay_conversion errors.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232436
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 15 Jan 2016 15:43:48 +0000 (15:43 +0000)]
2016-01-15 Richard Biener <rguenther@suse.de>
PR tree-optimization/66856
* tree-vect-loop.c (vect_transform_loop): Free SLP instances here.
* tree-vect-slp.c (vect_free_slp_tree): Decrement stmt reference count.
(vect_create_new_slp_node): Increment stmt reference count.
(vect_get_and_check_slp_defs): Make sure stmts are nor already in
an SLP tree before swapping operands.
(vect_build_slp_tree): Likewise.
(destroy_bb_vec_info): Free stmt info after SLP instances.
* tree-vect-stmts.c (new_stmt_vec_info): Initialize reference count.
* tree-vectorizer.h (struct _stmt_vec_info): Add num_slp_uses field.
(STMT_VINFO_NUM_SLP_USES): New macro.
* gcc.dg/torture/pr66856-1.c: New testcase.
* gcc.dg/torture/pr66856-2.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232435
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 15 Jan 2016 15:37:38 +0000 (15:37 +0000)]
2016-01-15 Richard Biener <rguenther@suse.de>
PR debug/69137
* dwarf2out.c (add_linkage_name_raw): New function split out from ...
(add_linkage_name): ... here.
(gen_typedef_die): Use add_linkage_name_raw instead of
add_linkage_attr to delay DECL_ASSEMBLER_NAME computation
if necessary.
* g++.dg/lto/pr69137_0.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232434
138bc75d-0d04-0410-961f-
82ee72b054a4
cesar [Fri, 15 Jan 2016 14:49:55 +0000 (14:49 +0000)]
gcc/
* gimplify.c (oacc_default_clause): Decode reference and pointer
types for both kernels and parallel regions.
libgomp/
* testsuite/libgomp.oacc-fortran/kernels-data.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232431
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Fri, 15 Jan 2016 14:41:10 +0000 (14:41 +0000)]
PR 69246: Invalid REG_ARGS_SIZE for sibcalls
The problem in this PR was that we were treating a sibcall as popping
arguments, leading to a negative REG_ARGS_SIZE.
It doesn't really make sense to treat sibcalls as popping since
(a) they're deallocating the caller's stack, not ours, and
(b) there are no optabs for popping sibcalls (any more).
Tested on x86_64-linux-gnu.
gcc/
PR middle-end/69246
* calls.c (emit_call_1): Force n_popped to zero for sibcalls.
gcc/testsuite/
PR middle-end/69246
* gcc.target/i386/pr69246.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232428
138bc75d-0d04-0410-961f-
82ee72b054a4
marxin [Fri, 15 Jan 2016 14:39:11 +0000 (14:39 +0000)]
Fix usage of an uninitialized variable
* lto-plugin.c (all_symbols_read_handler): Assign default
value to a string variable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232426
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 15 Jan 2016 13:59:18 +0000 (13:59 +0000)]
S/390: bind_c_array_params_2: Add proper call expr regexp for S/390.
gcc/testsuite/ChangeLog
* gfortran.dg/bind_c_array_params_2.f90: Fix test patterns for S/390.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232425
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Fri, 15 Jan 2016 13:34:12 +0000 (13:34 +0000)]
gcc/
* config/i386/i386.c (scalar_chain::compute_convert_gain): Fix typo.
(convert_scalars_to_vector): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232424
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 15 Jan 2016 13:13:17 +0000 (13:13 +0000)]
* doc/extend.texi (Type Traits): Fix grammar.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232423
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 15 Jan 2016 12:53:00 +0000 (12:53 +0000)]
S/390: const9.C: Disable test.
gcc/testsuite/ChangeLog
PR c++/56194
* g++.dg/init/const9.C: Disable test on S/390.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232422
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 15 Jan 2016 12:48:17 +0000 (12:48 +0000)]
S/390: Add -mbackchain to frame-address tests.
gcc/testsuite/ChangeLog
* g++.dg/Wframe-address.C: Test requires -mbackchain for s390*-*-*
* g++.dg/Wno-frame-address.C: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232421
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 15 Jan 2016 12:46:04 +0000 (12:46 +0000)]
S/390: Enable tree-ssa/
20040204-1.c testcase on s390.
gcc/testsuite/ChangeLog
* gcc.dg/tree-ssa/
20040204-1.c: Do not xfail on S/390.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232420
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Fri, 15 Jan 2016 12:43:49 +0000 (12:43 +0000)]
Avoid extraneous remapping in copy_gimple_seq_and_replace_locals
2016-01-15 Martin Jambor <mjambor@suse.cz>
* tree-inline.c (remap_decl): Use existing dclarations if
remapping a type and prevent_decl_creation_for_types.
(replace_locals_stmt): Do an initial remapping of non-VLA typed
decls first. Do real remapping with
prevent_decl_creation_for_types set.
* tree-inline.h (copy_body_data): New field
prevent_decl_creation_for_types, moved remap_var_for_cilk to avoid
padding.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232419
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 15 Jan 2016 12:41:51 +0000 (12:41 +0000)]
S/390: Better help text for -mmvcle.
gcc/ChangeLog
* config/s390/s390.opt (mmvcle): More verbose help text.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232418
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 15 Jan 2016 12:38:09 +0000 (12:38 +0000)]
S/390: s390.opt: Add period to -mzvector option text.
gcc/ChangeLog:
2016-01-15 Dominik Vogt <vogt@linux.vnet.ibm.com>
* config/s390/s390.opt: Add period to -mzvector option text.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232417
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 15 Jan 2016 12:37:15 +0000 (12:37 +0000)]
* include/bits/std_mutex.h: Fix Doxygen @file name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232416
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 15 Jan 2016 11:49:43 +0000 (11:49 +0000)]
2016-01-15 Richard Biener <rguenther@suse.de>
PR tree-optimization/68961
* tree-vect-slp.c (vect_analyze_slp_cost_1): Consider cost
of invariants in stores again.
* gcc.dg/vect/costmodel/x86_64/costmodel-pr68961.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232415
138bc75d-0d04-0410-961f-
82ee72b054a4
sh [Fri, 15 Jan 2016 11:29:12 +0000 (11:29 +0000)]
[RTEMS] Add Cortex-M7 multilib for FPU support
gcc/ChangeLog
* config/arm/t-rtems: Add cortex-m7/fpv5-d16 multilib.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232414
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Fri, 15 Jan 2016 11:04:25 +0000 (11:04 +0000)]
gcc/
* config/i386/i386.c (ix86_expand_branch): Don't split
DI mode xor instruction to SI mode.
gcc/testsuite/
* gcc.target/i386/pr65105-5.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232413
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Fri, 15 Jan 2016 11:02:29 +0000 (11:02 +0000)]
* gcc.c-torture/execute/alias-4.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232411
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Fri, 15 Jan 2016 11:00:24 +0000 (11:00 +0000)]
PR ipa/68148
* ipa-icf.c (sem_function::merge): Virtual functions may become
reachable even if they address is not taken and there are no
idrect calls.
* g++.dg/ipa/devirt-49.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232410
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Fri, 15 Jan 2016 09:57:02 +0000 (09:57 +0000)]
* lto-streamer-out.c (subtract_estimated_size): New function.
(get_symbol_initial_value): Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232407
138bc75d-0d04-0410-961f-
82ee72b054a4
chrbr [Fri, 15 Jan 2016 09:02:15 +0000 (09:02 +0000)]
fix time shift again
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232405
138bc75d-0d04-0410-961f-
82ee72b054a4
chrbr [Fri, 15 Jan 2016 08:57:22 +0000 (08:57 +0000)]
fix time shift
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232404
138bc75d-0d04-0410-961f-
82ee72b054a4
chrbr [Fri, 15 Jan 2016 08:46:49 +0000 (08:46 +0000)]
gcc
2015-01-16 Christian Bruel <christian.bruel@st.com>
PR target/65837
* config/arm/arm-builtins.c (ARM_BUILTIN_CRYPTO_BASE): New enum tag.
(arm_init_neon_builtins_internal): Rename arm_init_neon_builtins,
(arm_init_crypto_builtins_internal): Rename arm_init_crypto_builtins.
use add_builtin_function_ext_scope instead of add_builtin_function.
(neon_set_p, neon_crypto_set_p): Remove.
(arm_init_builtins): Always call arm_init_neon_builtins and
arm_init_crypto_builtins.
(arm_expand_builtin): Check that builtins are allowed for the arch.
* config/arm/arm-protos.h (arm_init_neon_builtins): Remove prototype.
* config/arm/arm.c (arm_valid_target_attribute_tree): Remove
arm_init_neon_builtins call.
gcc/testsuite
2015-01-16 Christian Bruel <christian.bruel@st.com>
PR target/65837
* gcc.target/arm/attr-neon-builtin-fail2.c: New test.
* gcc.target/arm/lto/pr65837-attr_0.c: New test.
* gcc.target/arm/lto/pr65837_0.c: Fix skip condition and use ACLE name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232403
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Fri, 15 Jan 2016 08:18:13 +0000 (08:18 +0000)]
* config/msp430/t-msp430 (lib2_mul_none.o): Only use the first
dependency as the source file to be compiled.
(lib2_mul_16bit.o, lib2hw_mul_16.o, lib2hw_mul_32.o)
(lib2hw_mul_f5.o): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232402
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 15 Jan 2016 08:16:08 +0000 (08:16 +0000)]
2016-01-15 Richard Biener <rguenther@suse.de>
PR tree-optimization/69117
* tree-ssa-sccvn.h (struct vn_ssa_aux): Add info member.
* tree-ssa-sccvn.c (set_ssa_val_to): Save and adjust SSA name info
of the leader conservatively.
(free_scc_vn): Restore original SSA name infos.
* gcc.dg/torture/pr69117.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232401
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 15 Jan 2016 02:45:44 +0000 (02:45 +0000)]
PR tree-optimization/69270
* tree-ssa-dom.c (ssa_name_has_boolean_range): If the type has a
single bit of precision, verify it's also unsigned.
(record_edge_info): Use constant_boolean_node rather than fold_convert
to convert boolean_true/boolean_false to the right type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232399
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 15 Jan 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232398
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 14 Jan 2016 23:12:53 +0000 (23:12 +0000)]
PR rtl-opt/69014
* loop-doloop.c (record_reg_sets): New.
(doloop_optimize): Reject the transform if the sequence
clobbers registers live at the end of the loop block.
(doloop_optimize_loops): Enable df_live if needed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232395
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 14 Jan 2016 22:45:10 +0000 (22:45 +0000)]
Fix minor whitespace problems in last commit
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232394
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 14 Jan 2016 22:23:09 +0000 (22:23 +0000)]
[cilkplus] Fix cilk_spawn gimplification bug (PR cilkplus/69048)
PR c++/69048
* cilk.c (create_cilk_wrapper_body): Call fold_build_cleanup_point_expr
to add missing cleanup point.
PR c++/69048
* g++.dg/cilk-plus/CK/pr69048.cc: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232393
138bc75d-0d04-0410-961f-
82ee72b054a4