platform/upstream/linaro-gcc.git
8 years agolibcpp: use better locations for _Pragma tokens (preprocessor/69126)
dmalcolm [Wed, 27 Jan 2016 18:57:51 +0000 (18:57 +0000)]
libcpp: use better locations for _Pragma tokens (preprocessor/69126)

gcc/testsuite/ChangeLog:
PR preprocessor/69126
* c-c++-common/pr69126.c: New test case.

libcpp/ChangeLog:
PR preprocessor/69126
* directives.c (destringize_and_run): Add expansion_loc param; use
it when handling unexpanded pragmas to fixup the locations of the
synthesized tokens.
(_cpp_do__Pragma): Add expansion_loc param and use it when calling
destringize_and_run.
* internal.h (_cpp_do__Pragma): Add expansion_loc param.
* macro.c (builtin_macro): Pass expansion location of _Pragma to
_cpp_do__Pragma.

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

8 years ago compiler: Accept map composite literals with omitted key types.
ian [Wed, 27 Jan 2016 18:51:58 +0000 (18:51 +0000)]
compiler: Accept map composite literals with omitted key types.
    compiler: Copy key_path_ when copying a Composite_literal_expression.

    Fixes golang/go#10263.

    Reviewed-on: https://go-review.googlesource.com/14299
    Reviewed-on: https://go-review.googlesource.com/18988

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

8 years ago PR lto/69254
jakub [Wed, 27 Jan 2016 18:48:30 +0000 (18:48 +0000)]
PR lto/69254
* sanitizer.def: Add BEGIN_SANITIZER_BUILTINS and
END_SANITIZER_BUILTINS markers using DEF_BUILTIN_STUB.
* asan.c (DEF_BUILTIN_STUB): Temporarily define.
* tree-streamer-in.c: Include asan.h.
(streamer_get_builtin_tree): For builtins in sanitizer
range call initialize_sanitizer_builtins and retry.

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

8 years ago * go-lang.c (go_langhook_init_options_struct): Default to
ian [Wed, 27 Jan 2016 18:37:14 +0000 (18:37 +0000)]
* go-lang.c (go_langhook_init_options_struct): Default to
-fkeep-gc-roots-live.

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

8 years agogcc/:
ian [Wed, 27 Jan 2016 17:42:47 +0000 (17:42 +0000)]
gcc/:
* common.opt (fkeep-gc-roots-live): New undocumented option.
* tree-ssa-loop-ivopts.c (add_candidate_1): If
-fkeep-gc-roots-live, skip pointers.
(add_iv_candidate_for_biv): Handle add_candidate_1 returning
NULL.

gcc/testsuite/:
* gcc.dg/tree-ssa/ivopt_5.c: New test.

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

8 years ago2016-01-15 Ryan Burn <contact@rnburn.com>
law [Wed, 27 Jan 2016 17:17:23 +0000 (17:17 +0000)]
2016-01-15  Ryan Burn  <contact@rnburn.com>

        PR cilkplus/69267
        * cilk.c (cilk_gimplify_call_params_in_spawned_fn): Change to use
        gimplify_arg. Removed superfluous post_p argument.
        * c-family.h (cilk_gimplify_call_params_in_spawned_fn): Removed
        superfluous post_p argument.
        * c-gimplify.c (c_gimplify_expr): Likewise.

gcc/cp/ChangeLog:

2016-01-15  Ryan Burn  <contact@rnburn.com>

        PR cilkplus/69267
        * cp-gimplify.c (cilk_cp_gimplify_call_params_in_spawned_fn): Removed
        superfluous post_p argument in call to
        cilk_gimplify_call_params_in_spawned_fn.

gcc/testsuite/ChangeLog:

2016-01-15  Ryan Burn  <contact@rnburn.com>

PR cilkplus/69267
* g++.dg/cilk-plus/CK/pr69267.cc: New test.

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

8 years ago2016-01-27 Uros Bizjak <ubizjak@gmail.com>
uros [Wed, 27 Jan 2016 17:08:00 +0000 (17:08 +0000)]
2016-01-27  Uros Bizjak  <ubizjak@gmail.com>

PR target/69512
* config/i386/i386.md (*zext<mode>_doubleword_and): New pattern.
(*zext<mode>_doubleword): Disable for TARGET_ZERO_EXTEND_WITH_AND.

testsuite/ChangeLog:

2016-01-27  Uros Bizjak  <ubizjak@gmail.com>

PR target/69512
* gcc.target/i386/pr69512.c: New test.

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

8 years ago2016-01-27 Thomas Klausner <wiz@NetBSD.org>
law [Wed, 27 Jan 2016 16:54:48 +0000 (16:54 +0000)]
2016-01-27  Thomas Klausner  <wiz@NetBSD.org>

PR target/68380
* configure.ac: NetBSD provides SSP in its C library.
* configure: Updated.

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

8 years ago PR ada/69488
ebotcazou [Wed, 27 Jan 2016 16:53:27 +0000 (16:53 +0000)]
PR ada/69488
* gnat.dg/sso/*.adb: Robustify dg-output directives.

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

8 years ago PR c++/69379
mpolacek [Wed, 27 Jan 2016 16:46:40 +0000 (16:46 +0000)]
PR c++/69379
* constexpr.c (cxx_eval_constant_expression): Handle PTRMEM_CSTs
wrapped in NOP_EXPRs.

* g++.dg/pr69379.C: New test.

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

8 years agoPR c++/69317 - [6 regression] wrong ABI version in -Wabi warnings
msebor [Wed, 27 Jan 2016 15:44:07 +0000 (15:44 +0000)]
PR c++/69317 - [6 regression] wrong ABI version in -Wabi warnings

gcc/cp/ChangeLog:
2016-01-27  Martin Sebor  <msebor@redhat.com>

PR c++/69317
* mangle.c (mangle_decl): Reference the correct (saved) version
of the ABI in -Wabi diagnostics.

gcc/testsuite/ChangeLog:
2016-01-27  Martin Sebor  <msebor@redhat.com>

PR c++/69317
* g++.dg/abi/Wabi-2-2.C: New test.
* g++.dg/abi/Wabi-2-3.C: New test.
* g++.dg/abi/Wabi-3-2.C: New test.
* g++.dg/abi/Wabi-3-3.C: New test.

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

8 years ago2015-01-27 Wilco Dijkstra <wdijkstr@arm.com>
wilco [Wed, 27 Jan 2016 15:12:10 +0000 (15:12 +0000)]
2015-01-27  Wilco Dijkstra  <wdijkstr@arm.com>

* MAINTAINERS: (Write After Approval): Add myself.

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

8 years agoSet FP options for failing special functions tests
redi [Wed, 27 Jan 2016 15:09:38 +0000 (15:09 +0000)]
Set FP options for failing special functions tests

PR libstdc++/69295
* testsuite/ext/special_functions/hyperg/check_value.cc: Use
-ffp-contract=off, and -ffloat-store to disable excess precision.
* testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
-ffp-contract=off.

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

8 years ago2016-01-27 Richard Biener <rguenther@suse.de>
rguenth [Wed, 27 Jan 2016 14:54:03 +0000 (14:54 +0000)]
2016-01-27  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69166
* tree-vect-loop.c (vect_is_simple_reduction): Always check
reduction code for commutativity / associativity.

* gcc.dg/torture/pr69166.c: New testcase.

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

8 years ago[PR 69355] Correct hole detection when total_scalarization fails
jamborm [Wed, 27 Jan 2016 14:51:17 +0000 (14:51 +0000)]
[PR 69355] Correct hole detection when total_scalarization fails

2016-01-27  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/69355
* tree-sra.c (analyze_access_subtree): Correct hole detection when
total_scalarization fails.

testsuite/
* gcc.dg/tree-ssa/pr69355.c: New test.

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

8 years ago PR c++/69496
mpolacek [Wed, 27 Jan 2016 14:26:38 +0000 (14:26 +0000)]
PR c++/69496
* constexpr.c (cxx_eval_array_reference): Evaluate the number of
elements of the array.

* g++.dg/ext/constexpr-vla1.C: New test.

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

8 years ago * config/rs6000/driver-rs6000.c (detect_processor_aix): Add
dje [Wed, 27 Jan 2016 13:31:51 +0000 (13:31 +0000)]
    * config/rs6000/driver-rs6000.c (detect_processor_aix): Add
        power9.

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

8 years ago2016-01-20 Christian Bruel <christian.bruel@st.com>
chrbr [Wed, 27 Jan 2016 13:03:45 +0000 (13:03 +0000)]
2016-01-20  Christian Bruel  <christian.bruel@st.com>

PR target/69245
* config/arm/arm-c.c (arm_pragma_target_parse): Add comments.
Move arm_reset_previous_fndecl and set_target_option_current_node in
the conditional part.  Call save_restore_target_globals.
* config/arm/arm.c (arm_set_current_function):
Refactor to better support #pragma target and attribute mix.
Call save_restore_target_globals.
* config/arm/arm-protos.h (save_restore_target_globals): New function.

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

8 years agoHSA: simplify partitioning of HSA kernels and host impls.
marxin [Wed, 27 Jan 2016 12:50:05 +0000 (12:50 +0000)]
HSA: simplify partitioning of HSA kernels and host impls.

* lto-partition.c (add_symbol_to_partition_1): Remove usage
of hsa_summaries.
* hsa.c (hsa_summary_t::link_functions): Create IPA_REF_ADDR
reference for an HSA kernel and its host function.

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

8 years ago PR tree-optimization/69399
jakub [Wed, 27 Jan 2016 11:40:04 +0000 (11:40 +0000)]
PR tree-optimization/69399
* wide-int.h (wi::lrshift): For larger precisions, only
use fast path if shift is known to be < HOST_BITS_PER_WIDE_INT.

* gcc.dg/torture/pr69399.c: New test.

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

8 years ago[ARC] Reject constant-constant comparison.
claziss [Wed, 27 Jan 2016 09:29:16 +0000 (09:29 +0000)]
[ARC] Reject constant-constant comparison.

gcc/
2016-01-27  Claudiu Zissulescu  <claziss@synopsys.com>

        * config/arc/predicates.md (proper_comparison_operator): Reject
        constant-constant comparison.

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

8 years ago * gcc.dg/tree-ssa/ssa-dom-cse-2.c: XFAIL on SPARC 64-bit.
ebotcazou [Wed, 27 Jan 2016 08:02:24 +0000 (08:02 +0000)]
* gcc.dg/tree-ssa/ssa-dom-cse-2.c: XFAIL on SPARC 64-bit.

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

8 years agolibiberty/ChangeLog:
ibuclaw [Wed, 27 Jan 2016 01:07:26 +0000 (01:07 +0000)]
libiberty/ChangeLog:

2016-01-26  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_call_convention): Handle extern Objective-C
function calling convention.
(dlang_call_convention_p): Likewise.
(dlang_type): Likewise.
* testsuite/d-demangle-expected: Add coverage tests.

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

8 years agolibiberty/ChangeLog:
ibuclaw [Wed, 27 Jan 2016 01:07:17 +0000 (01:07 +0000)]
libiberty/ChangeLog:

2016-01-26  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_function_args): Append ',' for variadic functions
only if parameters were seen before the elipsis symbol.
* testsuite/d-demangle-expected: Add coverage test for parameter-less
variadic functions.

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

8 years agolibiberty/ChangeLog:
ibuclaw [Wed, 27 Jan 2016 01:07:08 +0000 (01:07 +0000)]
libiberty/ChangeLog:

2016-01-27  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_type): Handle function types only in the context
of seeing a pointer type symbol.
* testsuite/d-demangle-expected: Update function pointer tests.

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

8 years agoDaily bump.
gccadmin [Wed, 27 Jan 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago compiler: Don't crash on erroneous array return types.
ian [Wed, 27 Jan 2016 00:00:58 +0000 (00:00 +0000)]
compiler: Don't crash on erroneous array return types.

    Another issue with erroneous array types.  When an erroneous array
    type is in a function's signature, particularly the return type, we
    must guarantee that type is changed into an error type.  Otherwise,
    any operations that work on arrays and slices will crash when applied
    to the erroneous array return type.

    Fixes golang/go#12939.

    Reviewed-on: https://go-review.googlesource.com/16235

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

8 years ago compiler: Don't crash on invalid array type declarations.
ian [Tue, 26 Jan 2016 23:28:37 +0000 (23:28 +0000)]
compiler: Don't crash on invalid array type declarations.

    Fixes golang/go#12937.

    Reviewed-on: https://go-review.googlesource.com/16233

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

8 years ago * gcc.c-torture/execute/stkalign.c: XFAIL run on SPARC 64-bit.
ebotcazou [Tue, 26 Jan 2016 22:44:46 +0000 (22:44 +0000)]
* gcc.c-torture/execute/stkalign.c: XFAIL run on SPARC 64-bit.

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

8 years ago compiler: Avoid knock-on errors with impossibly large types.
ian [Tue, 26 Jan 2016 22:35:20 +0000 (22:35 +0000)]
compiler: Avoid knock-on errors with impossibly large types.

    The gofrontend asks the backend compiler for the architecture
    appropriate size of a given type.  For array types, it is possible
    to construct a type too large to fit on the machine.  This patch does
    two things: 1. When an impossibly large type is encountered, we mark
    the type as erroneous and later calls to discover the size of that
    type are short-circuited. 2. When generating the GC symbol data for
    an impossibly large array of arrays, we avoid generating symbol data
    as soon as we find an array that is too large to be expressed.

    Fixes golang/go#12938.

    Reviewed-on: https://go-review.googlesource.com/16234

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

8 years agoHandle DR_NUM_DIMENSIONS == 0 in initialize_data_dependence_relation
vries [Tue, 26 Jan 2016 22:11:51 +0000 (22:11 +0000)]
Handle DR_NUM_DIMENSIONS == 0 in initialize_data_dependence_relation

2016-01-26  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/69110
* tree-data-ref.c (initialize_data_dependence_relation): Handle
DR_NUM_DIMENSIONS == 0.

* gcc.dg/autopar/pr69110.c: New test.

* testsuite/libgomp.c/pr69110.c: New test.

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

8 years agohandle isl_ast_op_select
spop [Tue, 26 Jan 2016 22:02:11 +0000 (22:02 +0000)]
handle isl_ast_op_select

2016-01-26  Abderrazek Zaafrani  <a.zaafrani@samsung.com>
            Sebastian Pop  <s.pop@samsung.com>

* graphite-isl-ast-to-gimple.c (ternary_op_to_tree): Handle
isl_ast_op_cond and isl_ast_op_select.
(gcc_expression_from_isl_expr_op): Same.

* gcc.dg/graphite/isl-ast-op-select.c: New.

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

8 years ago2016-01-26 Paul Thomas <pault@gcc.gnu.org>
pault [Tue, 26 Jan 2016 21:57:12 +0000 (21:57 +0000)]
2016-01-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/69385
* trans-expr.c (gfc_trans_assignment_1): Exclude initialization
assignments from check on assignment of scalars to unassigned
arrays and correct wrong code within the corresponding block.

2015-01-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/69385
* gfortran.dg/allocate_error_6.f90: New test.

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

8 years ago PR c++/68949
jason [Tue, 26 Jan 2016 21:34:16 +0000 (21:34 +0000)]
PR c++/68949

* constexpr.c (register_constexpr_fundef): Keep the un-massaged body.
(cxx_eval_call_expression): Don't look through clones.
* optimize.c (maybe_clone_body): Clear DECL_SAVED_TREE of the alias.
* semantics.c (expand_or_defer_fn_1): Keep DECL_SAVED_TREE of
maybe-in-charge *tor.

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

8 years ago PR c++/68782
jason [Tue, 26 Jan 2016 21:34:10 +0000 (21:34 +0000)]
PR c++/68782

gcc/
* tree.c (recompute_constructor_flags): Split out from
build_constructor.
(verify_constructor_flags): New.
* tree.h: Declare them.
gcc/cp/
* constexpr.c (cxx_eval_bare_aggregate): Update TREE_CONSTANT
and TREE_SIDE_EFFECTS.
(cxx_eval_constant_expression) [CONSTRUCTOR]: Call
verify_constructor_flags.

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

8 years ago PR rtl-optimization/69217
ibuclaw [Tue, 26 Jan 2016 20:57:37 +0000 (20:57 +0000)]
PR rtl-optimization/69217
* var-tracking.c (tracked_record_parameter_p): Don't segfault if there
are no TYPE_FIELDS set for the record type.

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

8 years ago PR target/68662
jakub [Tue, 26 Jan 2016 19:53:37 +0000 (19:53 +0000)]
PR target/68662
* config/rs6000/rs6000.c (rs6000_option_override_internal): Initialize
toc_label_name unconditionally.
(rs6000_emit_load_toc_table): Call ggc_strdup on toc_label_name for
SYMBOL_REF string.  Use toc_label_name instead of constructing
LCTOC1.
(rs6000_elf_declare_function_name): Use toc_label_name instead of
constructing LCTOC1.

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

8 years ago PR c++/68357
jakub [Tue, 26 Jan 2016 19:52:53 +0000 (19:52 +0000)]
PR c++/68357
* cp-gimplify.c (cp_fold): If some operand folds to error_mark_node,
return error_mark_node instead of building trees with error_mark_node
operands.

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

8 years agoFix assertions for move assignment of trivial types
redi [Tue, 26 Jan 2016 19:38:20 +0000 (19:38 +0000)]
Fix assertions for move assignment of trivial types

PR libstdc++/69478
* include/bits/stl_algobase.h (__copy_move<_IsMove, true,
random_access_iterator_tag>): Check is_move_assignable when moving.
(__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
Likewise.
* testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
* testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
* testsuite/25_algorithms/move/69478.cc: New.
* testsuite/25_algorithms/move_backward/69478.cc: new.

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

8 years agoPR other/69477 - attribute aligned documentation misleading
msebor [Tue, 26 Jan 2016 17:44:38 +0000 (17:44 +0000)]
PR other/69477 - attribute aligned documentation misleading

gcc/ChangeLog:
2016-01-26  Martin Sebor  <msebor@redhat.com>

PR other/69477
* doc/extend.texi (Common Type Attributes): Move text that talks about
attribute packed from attribute aligned to the section discussing
the former attribute for clarity.

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

8 years agoPR middle-end/60908
rth [Tue, 26 Jan 2016 17:29:02 +0000 (17:29 +0000)]
PR middle-end/60908

  * trans-mem.c (tm_region_init): Mark entry block as visited.
testsuite/
  * gcc.dg/tm/pr60908.c: New test.

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

8 years agoremove accidental empty commit
nathan [Tue, 26 Jan 2016 17:09:20 +0000 (17:09 +0000)]
remove accidental empty commit

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

8 years agoPR other/69006: fix extra newlines after diagnostics
dmalcolm [Tue, 26 Jan 2016 17:08:12 +0000 (17:08 +0000)]
PR other/69006: fix extra newlines after diagnostics

gcc/c-family/ChangeLog:
PR other/69006
* c-opts.c (c_diagnostic_finalizer): Replace invocation of
pp_newline_and_flush with pp_flush.

gcc/cp/ChangeLog:
PR other/69006
* error.c (print_instantiation_partial_context_line): Add missing
newlines from output for the t == NULL case.
(print_instantiation_partial_context): Remove call to pp_newline.

gcc/ChangeLog:
PR other/69006
* diagnostic-show-locus.c (layout::print_source_line): Replace
call to pp_newline with call to layout::print_newline.
(layout::print_annotation_line): Likewise.
(layout::move_to_column): Likewise.
(layout::print_any_fixits): After printing any fixits, print a
trailing newline, if necessary.
(layout::print_newline): New method, resetting any colorization
before a newline.
(diagnostic_show_locus): Move the pp_newline to before the
early bailout.  Remove dummy block enclosing the layout instance.
* diagnostic.c (default_diagnostic_finalizer): Replace invocation
of pp_newline_and_flush with pp_flush.
(diagnostic_append_note): Delete use of pp_newline.
(diagnostic_append_note_at_rich_loc): Delete.
* diagnostic.h (diagnostic_append_note_at_rich_loc): Delete.
* pretty-print.h (output_buffer_append_r): Reset buff->line_length
when newline characters are added to the buffer.

gcc/fortran/ChangeLog:
PR other/69006
* error.c (gfc_diagnostic_starter): Delete use of pp_newline.

gcc/testsuite/ChangeLog:
PR other/69006
* g++.dg/ext/timevar1.C: Add dg-allow-blank-lines-in-output
directive.
* gcc.dg/plugin/diagnostic-test-show-locus-color.c: Update
expected multiline output to reflect the colorization being
disabled before newlines.
* gcc.dg/plugin/diagnostic_plugin_test_show_locus.c
(custom_diagnostic_finalizer): Replace call to
pp_newline_and_flush with call to pp_flush.
* gcc.dg/unroll-2.c: Add dg-allow-blank-lines-in-output directive.
* gfortran.dg/implicit_class_1.f90: Likewise.
* lib/gcc-dg.exp (allow_blank_lines): New global.
(dg-allow-blank-lines-in-output): New procedure.
(gcc-dg-prune): Complain about blank lines in the output, unless
dg-allow-blank-lines-in-output was called.
* lib/multiline.exp (_build_multiline_regex): Only support
arbitrary followup text for non-blank-lines, not for blank lines.

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

8 years ago * configure.ac (ac_cv_std_swap_in_utility): New test.
matz [Tue, 26 Jan 2016 16:34:24 +0000 (16:34 +0000)]
* configure.ac (ac_cv_std_swap_in_utility): New test.
* system.h (<algorithm>): Check HAVE_SWAP_IN_UTILITY as well.
* configure: Regenerate.
* config.in: Regenerate.

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

8 years agoFix build failure when wide character support is not available
andris [Tue, 26 Jan 2016 16:07:33 +0000 (16:07 +0000)]
Fix build failure when wide character support is not available

* include/c_compatibility/stdlib.h: Include wide character related
definitions only when they are available in cstdlib.

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

8 years ago[ARC] Fix arcset* pattern's predicate.
claziss [Tue, 26 Jan 2016 16:06:16 +0000 (16:06 +0000)]
[ARC] Fix arcset* pattern's predicate.

gcc/
2016-01-26  Claudiu Zissulescu  <claziss@synopsys.com>

        * config/arc/arc.md (cstoresi4): Force operand into register.
        (arcset<code>): Fix predicate.
        (arcsetltu): Likewise.
        (arcsetgeu): Likewise.
        (arcsethi): Likewise.
        (arcsetls): Likewise.

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

8 years ago PR tree-optimization/69483
jakub [Tue, 26 Jan 2016 15:51:51 +0000 (15:51 +0000)]
PR tree-optimization/69483
* gimple-fold.c (canonicalize_constructor_val): Return NULL
if base has error_mark_node type.

* c-parser.c (c_parser_translation_unit): Use FOR_EACH_VEC_ELT.

* gcc.dg/pr69483.c: New test.
* g++.dg/opt/pr69483.C: New test.

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

8 years ago2016-01-26 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Tue, 26 Jan 2016 15:17:00 +0000 (15:17 +0000)]
2016-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/
PR target/68620
* config/arm/arm.c (neon_valid_immediate): Handle FP16 vectors.
* config/arm/arm_neon.h (__ARM_NUM_LANES, __arm_lane, arm_lanq):
New helper macros.
(vget_lane_f16): Handle big-endian.
(vgetq_lane_f16): Likewise.
(vset_lane_f16): Likewise.
(vsetq_lane_f16): Likewise.
* config/arm/iterators.md (VQXMOV): Add V8HF.
(VDQ): Add V4HF and V8HF.
(V_reg): Handle V4HF and V8HF.
(Is_float_mode): Likewise.
* config/arm/neon.md (movv4hf, movv8hf, neon_vdup_nv4hf,
neon_vdup_nv8hf): New patterns.
(vec_set<mode>_internal, vec_extract<mode>, neon_vld1_dup<mode>):
Use VD_LANE iterator.
(neon_vld1_dup<mode>): Use VQ2 iterator.

testsuite/
PR target/68620
* gcc.target/arm/pr68620.c: New test.

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

8 years agoRemove -m32 from gcc.target/i386/pr68986-2.c
hjl [Tue, 26 Jan 2016 14:33:12 +0000 (14:33 +0000)]
Remove -m32 from gcc.target/i386/pr68986-2.c

* gcc.target/i386/pr68986-2.c: Remove -m32.

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

8 years ago * omp-low.h (oacc_fn_attrib_kernels_p): Declare.
nathan [Tue, 26 Jan 2016 14:32:30 +0000 (14:32 +0000)]
* omp-low.h (oacc_fn_attrib_kernels_p): Declare.
(set_oacc_fn_attrib): Add IS_KERNEL arg.
* omp-low.c (set_oacc_fn_attrib): Add IS_KERNEL arg.
(oacc_fn_attrib_kernels_p, oacc_fn_attrib_level): New.
(expand_omp_target): Pass is_kernel to set_oacc_fn_attrib.
(oacc_validate_dims): Add LEVEL arg, don't return level.
(new_oacc_loop_routine): Use oacc_fn_attrib_level, not
oacc_validate_dims.
(execute_oacc_device_lower): Adjust, add more dump output.
* tree-ssa-loop.c (gate_oacc_kernels): Use
oacc_fn_attrib_kernels_p.
* tree-parloops.c (create_parallel_loop): Adjust
set_oacc_fn_attrib call.

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

8 years ago PR lto/69254
jakub [Tue, 26 Jan 2016 14:25:56 +0000 (14:25 +0000)]
PR lto/69254
* lto-wrapper.c (merge_and_complain): Handle -fcilkplus.
(append_compiler_options): Handle -fcilkplus.
(append_linker_options): Ignore -fno-{openmp,openacc,cilkplus}.

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

8 years ago PR target/66655
nickc [Tue, 26 Jan 2016 14:02:11 +0000 (14:02 +0000)]
PR target/66655
* config/i386/winnt.c (i386_pe_binds_local_p): If a function has
been marked as DECL_ONE_ONLY but we do not the means to make it
so, then do not allow it to bind locally.

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

8 years ago PR lto/69254
jakub [Tue, 26 Jan 2016 13:01:44 +0000 (13:01 +0000)]
PR lto/69254
* opts.h (parse_sanitizer_options): New prototype.
* opts.c (sanitizer_opts): New array.
(parse_sanitizer_options): New function.
(common_handle_option): Use parse_sanitizer_options.

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

8 years agoUpdate stack alignment in ix86_update_stack_boundary
hjl [Tue, 26 Jan 2016 12:51:07 +0000 (12:51 +0000)]
Update stack alignment in ix86_update_stack_boundary

Stack alignment adjustment for __tls_get_addr should be done in
ix86_update_stack_boundary, not ix86_compute_frame_layout.  Also
there is no need to over-align stack for __tls_get_addr and function
with __tls_get_addr call isn't a leaf function.

gcc/

PR target/68986
* config/i386/i386.c (ix86_compute_frame_layout): Move stack
alignment adjustment to ...
(ix86_update_stack_boundary): Here.  Don't over-align stack for
__tls_get_addr.
(ix86_finalize_stack_realign_flags): Use stack_alignment_needed
if __tls_get_addr is called.

gcc/testsuite/

PR target/68986
* gcc.target/i386/pr68986-1.c: New test.
* gcc.target/i386/pr68986-2.c: Likewise.
* gcc.target/i386/pr68986-3.c: Likewise.

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

8 years agoremove arm_crypto_pragma test selector
chrbr [Tue, 26 Jan 2016 12:45:13 +0000 (12:45 +0000)]
remove arm_crypto_pragma test selector

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

8 years ago * config/ia64/ia64.c (ia64_expand_vecint_compare): Use gen_int_mode.
ebotcazou [Tue, 26 Jan 2016 12:06:36 +0000 (12:06 +0000)]
* config/ia64/ia64.c (ia64_expand_vecint_compare): Use gen_int_mode.

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

8 years ago2016-01-26 Richard Biener <rguenther@suse.de>
rguenth [Tue, 26 Jan 2016 12:05:22 +0000 (12:05 +0000)]
2016-01-26  Richard Biener  <rguenther@suse.de>

PR middle-end/69467
* match.pd: Guard X * CST CMP 0 pattern with single_use.

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

8 years ago2016-01-26 Richard Biener <rguenther@suse.de>
rguenth [Tue, 26 Jan 2016 11:51:01 +0000 (11:51 +0000)]
2016-01-26  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69452
* tree-ssa-loop-im.c (move_computations_dom_walker): Remove.
(move_computations_dom_walker::before_dom_children): Rename
to ...
(move_computations_worker): This.
(move_computations): Perform an RPO rather than a DOM walk.

* gcc.dg/torture/pr69452.c: New testcase.

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

8 years ago PR target/69442
jakub [Tue, 26 Jan 2016 11:12:03 +0000 (11:12 +0000)]
PR target/69442
* combine.c (combine_instructions): For REG_EQUAL note with
SET_DEST being ZERO_EXTRACT, also temporarily set SET_DEST
to the underlying register.
* doc/rtl.texi (REG_EQUAL): Document the behavior of
REG_EQUAL/REG_EQUIV notes if SET_DEST is ZERO_EXTRACT.

* gcc.dg/pr69442.c: New test.

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

8 years ago[PATCH] Do not set structural equality on polynomial types
jgreenhalgh [Tue, 26 Jan 2016 10:04:46 +0000 (10:04 +0000)]
[PATCH] Do not set structural equality on polynomial types

gcc/ChangeLog:

PR target/67896
* config/aarch64/aarch64-builtins.c
(aarch64_init_simd_builtin_types): Do not set structural
equality to __Poly{8,16,64,128}_t types.

gcc/testsuite/ChangeLog:

PR target/67896
* gcc.target/aarch64/simd/pr67896.C: New.

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

8 years agoPR 69400: Invalid 128-bit modulus result
rsandifo [Tue, 26 Jan 2016 09:53:33 +0000 (09:53 +0000)]
PR 69400: Invalid 128-bit modulus result

As described in the PR, wi::divmod_internal was sign- rather than
zero-extending a modulus result in cases where the result has fewer
HWIs than the precision and the upper bit of the upper HWI was set.

This patch tries to make things more robust by getting wi_pack
to handle the canonicalisation step itself.

Tested on x86_64-linux-gnu.  I added tests to the wide-int
plugin since that seemed more direct.

gcc/
PR tree-optimization/69400
* wide-int.cc (wi_pack): Take the precision as argument and
perform canonicalization here rather than in the callers.
Use the main loop to handle all full-width HWIs.  Add a
zero HWI if in_len isn't a full result.
(wi::divmod_internal): Update accordingly.
(wi::mul_internal): Likewise.  Simplify.

gcc/testsuite/
PR tree-optimization/69400
* gcc.dg/plugin/wide-int_plugin.c (test_wide_int_mod_trunc): New
function.
(plugin_init): Call it.
* gcc.dg/torture/pr69400.c: New test.

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

8 years ago2016-01-26 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Tue, 26 Jan 2016 09:45:43 +0000 (09:45 +0000)]
2016-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/arm/pr68674.c: Check and use arm_fp effective target.

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

8 years agoAdd missing includes in JIT frontend.
ibuclaw [Tue, 26 Jan 2016 08:53:17 +0000 (08:53 +0000)]
Add missing includes in JIT frontend.

gcc/jit/
* jit-playback.c: Include pthread.h.

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

8 years agonew scop schedule for isl-0.15
spop [Tue, 26 Jan 2016 00:19:20 +0000 (00:19 +0000)]
new scop schedule for isl-0.15

Keep unchanged the implementation for isl-0.14.

* graphite-poly.c (apply_poly_transforms): Simplify.
(print_isl_set): Use more readable format: ISL_YAML_STYLE_BLOCK.
(print_isl_map): Same.
(print_isl_union_map): Same.
(print_isl_schedule): New.
(debug_isl_schedule): New.
* graphite-dependences.c (scop_get_reads): Do not call
isl_union_map_add_map that is undocumented isl functionality.
(scop_get_must_writes): Same.
(scop_get_may_writes): Same.
(scop_get_original_schedule): Remove.
(scop_get_dependences): Do not call isl_union_map_compute_flow that
is deprecated in isl 0.15.  Instead, use isl_union_access_* interface.
(compute_deps): Remove.
* graphite-isl-ast-to-gimple.c (print_schedule_ast): New.
(debug_schedule_ast): New.
(translate_isl_ast_to_gimple::scop_to_isl_ast): Call set_separate_option.
(graphite_regenerate_ast_isl): Add dump.
(translate_isl_ast_to_gimple::scop_to_isl_ast): Generate code
from scop->transformed_schedule.
(graphite_regenerate_ast_isl): Add more dump.
* graphite-optimize-isl.c (optimize_isl): Set
scop->transformed_schedule.  Check whether schedules are equal.
(apply_poly_transforms): Move here.
* graphite-poly.c (apply_poly_transforms): ... from here.
(free_poly_bb): Static.
(free_scop): Static.
(pbb_number_of_iterations_at_time): Remove.
(print_isl_ast): New.
(debug_isl_ast): New.
(debug_scop_pbb): New.
* graphite-scop-detection.c (print_edge): Move.
(print_sese): Move.
* graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons): Remove.
(build_scop_scattering): Remove.
(create_pw_aff_from_tree): Assert instead of bailing out.
(add_condition_to_pbb): Remove unused code, do not fail.
(add_conditions_to_domain): Same.
(add_conditions_to_constraints): Remove.
(build_scop_context): New.
(add_iter_domain_dimension): New.
(build_iteration_domains): Initialize pbb->iterators.
Call add_conditions_to_domain.
(nested_in): New.
(loop_at): New.
(index_outermost_in_loop): New.
(index_pbb_in_loop): New.
(outermost_pbb_in): New.
(add_in_sequence): New.
(add_outer_projection): New.
(outer_projection_mupa): New.
(add_loop_schedule): New.
(build_schedule_pbb): New.
(build_schedule_loop): New.
(embed_in_surrounding_loops): New.
(build_schedule_loop_nest): New.
(build_original_schedule): New.
(build_poly_scop): Call build_original_schedule.
* graphite.h: Declare print_isl_schedule and debug_isl_schedule.
(free_poly_dr): Remove.
(struct poly_bb): Add iterators.  Remove schedule, transformed, saved.
(free_poly_bb): Remove.
(debug_loop_vec): Remove.
(print_isl_ast): Declare.
(debug_isl_ast): Declare.
(scop_do_interchange): Remove.
(scop_do_strip_mine): Remove.
(scop_do_block): Remove.
(flatten_all_loops): Remove.
(optimize_isl): Remove.
(pbb_number_of_iterations_at_time): Remove.
(debug_scop_pbb): Declare.
(print_schedule_ast): Declare.
(debug_schedule_ast): Declare.
(struct scop): Remove schedule.  Add original_schedule,
transformed_schedule.
(free_gimple_poly_bb): Remove.
(print_generated_program): Remove.
(debug_generated_program): Remove.
(unify_scattering_dimensions): Remove.
* sese.c (print_edge): ... here.
(print_sese): ... here.
(debug_edge): ... here.
(debug_sese): ... here.
* sese.h (print_edge): Declare.
(print_sese): Declare.
(dump_edge): Declare.
(dump_sese): Declare.

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

8 years agofix PR68343: disable fuse-*.c tests for isl 0.14 or earlier
spop [Tue, 26 Jan 2016 00:19:11 +0000 (00:19 +0000)]
fix PR68343: disable fuse-*.c tests for isl 0.14 or earlier

The patch disables all fuse-*.c tests when configuring gcc with isl 0.14 or earlier.

ChangeLog:

* Makefile.in: Regenerate.
* Makefile.tpl: Export ISLVER.
* configure: Regenerate.
* config/isl.m4: Detect isl-0.15.

gcc/

* Makefile.in: Set ISLVER in site.exp.

gcc/testsuite/

* gcc.dg/graphite/graphite.exp: Only run the fuse-*.c tests with isl-0.15.

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

8 years agoadd missing testcase
spop [Tue, 26 Jan 2016 00:18:56 +0000 (00:18 +0000)]
add missing testcase

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

8 years agoDaily bump.
gccadmin [Tue, 26 Jan 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago PR target/69444
jakub [Mon, 25 Jan 2016 21:37:08 +0000 (21:37 +0000)]
PR target/69444
* config/rs6000/sfp-machine.h: Fix a typo in #ifndef - __NO_FPRS__
instead of ___NO_FPRS__.

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

8 years ago * omp-low.c (lower_omp_target) <case USE_DEVICE_PTR>: Set
jakub [Mon, 25 Jan 2016 21:34:06 +0000 (21:34 +0000)]
* omp-low.c (lower_omp_target) <case USE_DEVICE_PTR>: Set
DECL_VALUE_EXPR of new_var even for the non-array case.  Look
through DECL_VALUE_EXPR for expansion.

* c-c++-common/goacc/use_device-1.c: New test.

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

8 years ago * config/mips/mips.c (mips_compute_frame_info): Skip re-computing
edlinger [Mon, 25 Jan 2016 20:33:52 +0000 (20:33 +0000)]
    * config/mips/mips.c (mips_compute_frame_info): Skip re-computing
        the frame info after reload completed.

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

8 years ago PR tree-optimization/69196
law [Mon, 25 Jan 2016 19:19:09 +0000 (19:19 +0000)]
PR tree-optimization/69196
PR tree-optimization/68398
* tree-ssa-threadupdate.h (enum bb_dom_status): Moved here from
tree-ssa-threadupdate.c.
(determine_bb_domination_status): Prototype
* tree-ssa-threadupdate.c (enum bb_dom_status): Remove
(determine_bb_domination_status): No longer static.
(valid_jump_thread_path): Remove code to detect characteristics
of the jump thread path not associated with correctness.
* tree-ssa-threadbackward.c (fsm_find_control_statment_thread_paths):
Correct test for thread path length.  Count PHIs for real operands as
statements that need to be copied.  Do not count ASSERT_EXPRs.
Look at all the blocks in the thread path.  Compute and selectively
filter thread paths based on threading through the latch, threading
a multiway branch or crossing a multiway branch.

PR tree-optimization/69196
PR tree-optimization/68398
* gcc.dg/tree-ssa/pr66752-3.c: Update expected output
* gcc.dg/tree-ssa/pr68198.c: Likewise.

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

8 years agoAvoid including all of <random> in <algorithm>
redi [Mon, 25 Jan 2016 16:44:30 +0000 (16:44 +0000)]
Avoid including all of <random> in <algorithm>

PR libstdc++/69464
* include/Makefile.am: Add new header.
* include/Makefile.in: Regenerate.
* include/bits/random.h (uniform_int_distribution): Move to
bits/uniform_int_dist.h.
* include/bits/random.tcc (uniform_int_distribution::operator(),
uniform_int_distribution::__generate_impl): Likewise.
* include/bits/uniform_int_dist.h: New header.
* include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
<bits/uniform_int_dist.h> instead of <random>.
* testsuite/20_util/specialized_algorithms/uninitialized_copy/
move_iterators/1.cc: Include correct header for uninitialized_copy.
* testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/nth_element/58800.cc: Include correct
header for vector.
* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.

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

8 years ago PR target/69469
dje [Mon, 25 Jan 2016 16:16:21 +0000 (16:16 +0000)]
    PR target/69469
        * gcc.target/powerpc/vsx-vector-2.c: Adjust for Goldschmidt's
        Algorithm.

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

8 years ago2016-01-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Jan 2016 14:42:39 +0000 (14:42 +0000)]
2016-01-25  Richard Biener  <rguenther@suse.de>

PR testsuite/69380
* g++.dg/tree-ssa/pr69336.C: Restrict to x86_64 and i?86.

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

8 years ago2016-01-25 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Mon, 25 Jan 2016 14:06:28 +0000 (14:06 +0000)]
2016-01-25  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (rs6000_keep_leaf_when_profiled):  Add
decl with __attribute__ ((unused)) annotation.

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

8 years agogcc/
ienkovich [Mon, 25 Jan 2016 12:48:54 +0000 (12:48 +0000)]
gcc/

PR target/69421
* tree-vect-stmts.c (vectorizable_condition): Check vectype
of operands is compatible with a statement vectype.

gcc/testsuite/

PR target/69421
* gcc.dg/pr69421.c: New test.

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

8 years ago * doc/extend.texi (scalar_storage_order type attribute): Fix typo and
ebotcazou [Mon, 25 Jan 2016 11:42:25 +0000 (11:42 +0000)]
* doc/extend.texi (scalar_storage_order type attribute): Fix typo and
improve wording for mixed storage order support.

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

8 years ago[AARCH64][ACLE][NEON] Implement vcvt*_s64_f64 and vcvt*_u64_f64 NEON intrinsics.
jgreenhalgh [Mon, 25 Jan 2016 11:32:07 +0000 (11:32 +0000)]
[AARCH64][ACLE][NEON] Implement vcvt*_s64_f64 and vcvt*_u64_f64 NEON intrinsics.

gcc/

* config/aarch64/arm_neon.h (vcvt_s64_f64): New intrinsic.
(vcvt_u64_f64): Likewise.
(vcvta_s64_f64): Likewise.
(vcvta_u64_f64): Likewise.
(vcvtm_s64_f64): Likewise.
(vcvtm_u64_f64): Likewise.
(vcvtn_s64_f64): Likewise.
(vcvtn_u64_f64): Likewise.
(vcvtp_s64_f64): Likewise.
(vcvtp_u64_f64): Likewise.

gcc/testsuite/

* gcc.target/aarch64/simd/vcvt_s64_f64_1.c: New.
* gcc.target/aarch64/simd/vcvt_u64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvta_s64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvta_u64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtm_s64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtm_u64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtn_s64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtn_u64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtp_s64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtp_u64_f64_1.c: Likewise.

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

8 years ago[ARC] Add basic support for double load and store instructions
claziss [Mon, 25 Jan 2016 11:15:58 +0000 (11:15 +0000)]
[ARC] Add basic support for double load and store instructions

gcc/
2016-01-25  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.c (TARGET_DWARF_REGISTER_SPAN): Define.
(arc_init): Check validity mll64 option.
(arc_save_restore): Use double load/store instruction.
(arc_expand_movmem): Likewise.
(arc_split_move): Don't split if we have double load/store
instructions. Returns a boolean.
(arc_process_double_reg_moves): Change function to return boolean
instead of a sequence of instructions.
(arc_dwarf_register_span): New function.
* config/arc/arc-protos.h (arc_split_move): Change prototype.
* config/arc/arc.h (TARGET_CPU_CPP_BUILTINS): Define __ARC_LL64__.
* config/arc/arc.md (*movdi_insn): Emit ldd/std instructions.
(*movdf_insn): Likewise.
* config/arc/arc.opt (mll64): New option.
* config/arc/predicates.md (even_register_operand): New predicate.
* doc/invoke.texi (ARC Options): Add mll64 documentation.

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

8 years ago2016-01-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Jan 2016 09:31:47 +0000 (09:31 +0000)]
2016-01-25  Richard Biener  <rguenther@suse.de>

PR lto/69393
* dwarf2out.c (is_naming_typedef_decl): Not when DECL_NAMELESS.
* tree-streamer-out.c (pack_ts_base_value_fields): Stream
DECL_NAMELESS.
* tree-streamer-in.c (unpack_ts_base_value_fields): Likewise.

* testsuite/libgomp.c++/pr69393.C: New testcase.

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

8 years ago2016-01-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Jan 2016 09:05:47 +0000 (09:05 +0000)]
2016-01-25  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69376
* tree-ssa-sccvn.h (struct vn_ssa_aux): Add range_info_anti_range_p
flag.
(VN_INFO_ANTI_RANGE_P): New inline.
(VN_INFO_RANGE_TYPE): Likewise.
* tree-ssa-sccvn.c (set_ssa_val_to): Also record and copy
SSA_NAME_ANTI_RANGE_P.
(free_scc_vn): Restore SSA_NAME_ANTI_RANGE_P.
* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
Properly query VN_INFO_RANGE_TYPE.

* gcc.dg/torture/pr69376.c: New testcase.

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

8 years ago PR target/66655
nickc [Mon, 25 Jan 2016 08:57:02 +0000 (08:57 +0000)]
PR target/66655
* config/i386/cygming.h (MAKE_DECL_ONE_ONLY): Remove definition.

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

8 years agoDaily bump.
gccadmin [Mon, 25 Jan 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago2016-01-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 24 Jan 2016 22:18:20 +0000 (22:18 +0000)]
2016-01-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/69397
PR fortran/68442
* interface.c (gfc_arglist_matches_symbol): Replace assert with
a return false if not a procedure.
* resolve.c (resolve_generic_f): Test if we are resolving an
initialization expression and adjust error message accordingly.

2016-01-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/69397
PR fortran/68442
* gfortran.dg/interface_38.f90: New test.
* gfortran.dg/interface_39.f90: New test.

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

8 years ago2016-01-24 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sun, 24 Jan 2016 18:15:08 +0000 (18:15 +0000)]
2016-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66094
* frontend-passes.c (matmul_lhs_realloc):  Add
forgotten break statement.

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

8 years agoRevert "Fix the remaining PR c++/24666 blockers"
ppalka [Sun, 24 Jan 2016 17:45:21 +0000 (17:45 +0000)]
Revert "Fix the remaining PR c++/24666 blockers"

gcc/cp/ChangeLog:

Revert:
2016-01-18  Patrick Palka  <ppalka@gcc.gnu.org>

PR c++/11858
PR c++/24663
PR c++/24664
* decl.c (grokdeclarator): Don't decay array parameter type to
a pointer type if it's dependent.
(grokparms): Invoke strip_top_quals instead of directly invoking
cp_build_qualified_type.
* pt.c (decay_dependent_array_parm_type): New static function.
(type_unification_real): Call decay_dependent_array_parm_type
to decay a dependent array parameter type to its corresponding
pointer type before unification.
(more_specialized_fn): Likewise.
(get_bindings): Likewise.
* tree.c (cp_build_qualified_type): Trivial typofix in
documentation.

gcc/testsuite/ChangeLog:

Revert:
2016-01-18  Patrick Palka  <ppalka@gcc.gnu.org>

PR c++/11858
PR c++/24663
PR c++/24664
* g++.dg/template/pr11858.C: New test.
* g++.dg/template/pr24663.C: New test.
* g++.dg/template/unify12.C: New test.
* g++.dg/template/unify13.C: New test.
* g++.dg/template/unify14.C: New test.
* g++.dg/template/unify15.C: New test.
* g++.dg/template/unify16.C: New test.
* g++.dg/template/unify17.C: New test.

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

8 years agoPass LSAN_OPTIONS to Makefiles in subdirectories
miyuki [Sun, 24 Jan 2016 15:32:17 +0000 (15:32 +0000)]
Pass LSAN_OPTIONS to Makefiles in subdirectories

PR bootstrap/69329
* Makefile.tpl (BASE_FLAGS_TO_PASS): Add LSAN_OPTIONS.
* Makefile.in: Regenerate.

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

8 years ago2016-01-24 Dominique d'Humieres <dominiq@lps.ens.fr>
dominiq [Sun, 24 Jan 2016 13:13:38 +0000 (13:13 +0000)]
2016-01-24  Dominique d'Humieres  <dominiq@lps.ens.fr>

PR fortran/68283
gfortran.dg/pr68283.f90: New test.

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

8 years ago2016-01-24 Dominique d'Humieres <dominiq@lps.ens.fr>
dominiq [Sun, 24 Jan 2016 13:12:44 +0000 (13:12 +0000)]
2016-01-24  Dominique d'Humieres <dominiq@lps.ens.fr>

PR fortran/68283
* primary.c (gfc_variable_attr): revert revision r221955,
call gfc_internal_error only if there is no error.

2016-01-24  Dominique d'Humieres  <dominiq@lps.ens.fr>

PR fortran/68283
gfortran.dg/pr68283.f90: New test.

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

8 years ago2016-01-24 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sun, 24 Jan 2016 09:11:50 +0000 (09:11 +0000)]
2016-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66094
* frontend-passes.c (enum matrix_case):  Add case A2B2T for
MATMUL(A,TRANSPoSE(B)) where A and B are rank 2.
(inline_limit_check):  Also add A2B2T.
(matmul_lhs_realloc):  Handle A2B2T.
(check_conjg_variable):  Rename to
(check_conjg_transpose_variable):  and also count TRANSPOSE.
(inline_matmul_assign):  Handle A2B2T.

2016-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66094
* gfortran.dg/inline_matmul_13.f90:  New test.
* gfortran.dg/matmul_bounds_8.f90:  New test.
* gfortran.dg/matmul_bounds_9.f90:  New test.
* gfortran.dg/matmul_bounds_10.f90:  New test.

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

8 years agoDaily bump.
gccadmin [Sun, 24 Jan 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago PR libfortran/68744
danglin [Sat, 23 Jan 2016 23:32:13 +0000 (23:32 +0000)]
PR libfortran/68744
* runtime/backtrace.c: Include gthr.h.
(show_backtrace): Use __gthread_active_p() to determine whether threads
are active.  Return if lbstate is NULL.

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

8 years ago PR libstdc++/69446
danglin [Sat, 23 Jan 2016 22:24:59 +0000 (22:24 +0000)]
PR libstdc++/69446
* config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.

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

8 years agoFix clobber removal in parloops
vries [Sat, 23 Jan 2016 20:28:17 +0000 (20:28 +0000)]
Fix clobber removal in parloops

2016-01-23  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/69426
* tree-parloops.c (eliminate_local_variables_stmt): Handle vdef of
removed clobber.

* gcc.dg/autopar/pr69426.c: New test.

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

8 years agoPR c++/58109 - alignas() fails to compile with constant expression
msebor [Sat, 23 Jan 2016 16:01:47 +0000 (16:01 +0000)]
PR c++/58109 - alignas() fails to compile with constant expression
PR c++/69022 - attribute vector_size ignored with dependent bytes

gcc/testsuite/ChangeLog:
2016-01-23  Martin Sebor  <msebor@redhat.com>

PR c++/58109
PR c++/69022
* g++.dg/cpp0x/alignas5.C: New test.
* g++.dg/ext/vector29.C: Same.

gcc/cp/ChangeLog:
2016-01-23  Martin Sebor  <msebor@redhat.com>

PR c++/58109
PR c++/69022
* decl2.c (is_late_template_attribute): Handle dependent argument
  to attribute align and attribute vector_size.

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

8 years ago * tree-ssanames.c (release_free_names_and_compact_live_names): Replace
jakub [Sat, 23 Jan 2016 14:13:53 +0000 (14:13 +0000)]
* tree-ssanames.c (release_free_names_and_compact_live_names): Replace
"the the" with "the" in the comments.
* ipa-devirt.c (build_type_inheritance_graph,
update_type_inheritance_graph): Likewise.
* tree.c (build_function_type_list_1): Likewise.
* cfgloopmanip.c (scale_loop_profile): Likewise.
* tree-ssa-loop-ivopts.c (get_shiftadd_cost): Likewise.
* gimple-ssa-split-paths.c
(find_block_to_duplicate_for_splitting_paths): Likewise.
* tree-sra.c (init_subtree_with_zero, clobber_subtree): Likewise.
* expr.c (convert_move): Likewise.
* var-tracking.c (vt_stack_adjustments): Likewise.
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Likewise.
* tree-vrp.c (test_for_singularity): Likewise.

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

8 years ago * tree-vect-stmts.c (vectorizable_condition): Build a VEC_COND_EXPR
jakub [Sat, 23 Jan 2016 09:54:53 +0000 (09:54 +0000)]
* tree-vect-stmts.c (vectorizable_condition): Build a VEC_COND_EXPR
directly instead of building a temporary tree.

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

8 years ago PR bootstrap/69434
jakub [Sat, 23 Jan 2016 09:54:19 +0000 (09:54 +0000)]
PR bootstrap/69434
* genrecog.c: Define INCLUDE_ALGORITHM before including system.h,
remove <algorithm> include.

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

8 years ago * gcc.target/i386/chkp-strlen-2.c: Define _GNU_SOURCE.
uros [Sat, 23 Jan 2016 09:29:12 +0000 (09:29 +0000)]
* gcc.target/i386/chkp-strlen-2.c: Define _GNU_SOURCE.
* gcc.target/i386/chkp-strlen-4.c: Move the definition of
_GNU_SOURCE from compile flags to the source.
* gcc.target/i386/chkp-stropt-12.c: Ditto.
* gcc.target/i386/chkp-stropt-16.c: Ditto.
* gcc.target/i386/chkp-stropt-4.c: Ditto.
* gcc.target/i386/chkp-stropt-8.c: Ditto.

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

8 years agoDaily bump.
gccadmin [Sat, 23 Jan 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.

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