platform/upstream/gcc.git
8 years agomake debug comment more explicit
Abderrazek Zaafrani [Thu, 28 Jan 2016 16:39:18 +0000 (16:39 +0000)]
make debug comment more explicit

2016-01-28  Abderrazek Zaafrani  <a.zaafrani@samsung.com>

* graphite-optimize-isl.c (optimize_isl): Print a different debug
message when isl does not return a valid schedule.

From-SVN: r232935

8 years agoremove out of sync comments
Sebastian Pop [Thu, 28 Jan 2016 16:39:10 +0000 (16:39 +0000)]
remove out of sync comments

* graphite-isl-ast-to-gimple.c (class translate_isl_ast_to_gimple):
Remove comments from class declarations: they are already in the code
close by the defs.

From-SVN: r232934

8 years agouse codegen_error_p
Sebastian Pop [Thu, 28 Jan 2016 16:39:01 +0000 (16:39 +0000)]
use codegen_error_p

* graphite-isl-ast-to-gimple.c (binary_op_to_tree): Call codegen_error_p.
(ternary_op_to_tree): Same.
(unary_op_to_tree): Same.
(nary_op_to_tree): Same.
(gcc_expression_from_isl_expr_op): Same.
(gcc_expression_from_isl_expression): Same.
(graphite_create_new_loop): Same.
(graphite_create_new_loop_guard): Same.
(build_iv_mapping): Same.
(graphite_create_new_guard): Same.
(translate_isl_ast_to_gimple::copy_loop_phi_nodes): Same.
(translate_isl_ast_to_gimple::translate_pending_phi_nodes): Same.

From-SVN: r232933

8 years agoassert instead of silently failing code gen
Sebastian Pop [Thu, 28 Jan 2016 16:38:52 +0000 (16:38 +0000)]
assert instead of silently failing code gen

* graphite-isl-ast-to-gimple.c (get_rename_from_scev): Assert instead of
setting codegen_error to fail codegen.

From-SVN: r232932

8 years ago* tree.h (BINFO_FLAG_0): Rename from BINFO_MARKED.
Jason Merrill [Thu, 28 Jan 2016 15:45:44 +0000 (10:45 -0500)]
* tree.h (BINFO_FLAG_0): Rename from BINFO_MARKED.

From-SVN: r232931

8 years agoA recent change added UNSPEC to the CCMP patterns to stop combine optimizing the...
Wilco Dijkstra [Thu, 28 Jan 2016 15:41:46 +0000 (15:41 +0000)]
A recent change added UNSPEC to the CCMP patterns to stop combine optimizing the immediate in a rare case.

A recent change added UNSPEC to the CCMP patterns to stop combine optimizing
the immediate in a rare case.  This requires a fix to the CCMP cost
calculation as the CCMP instruction with unspec is no longer recognized.
Fix the ccmp_1.c test by adding -ffinite-math-only so FCCMPE is emitted on
relational compares.

2016-01-28  Wilco Dijkstra  <wdijkstr@arm.com>

    gcc/
* config/aarch64/aarch64.c (aarch64_if_then_else_costs):
Remove CONST_INT_P check in CCMP cost calculation.

    gcc/testsuite/
* gcc.target/aarch64/ccmp_1.c: Fix test issue.

From-SVN: r232930

8 years agore PR c++/67407 (ice in friend_accessible_p)
Jason Merrill [Thu, 28 Jan 2016 15:07:56 +0000 (10:07 -0500)]
re PR c++/67407 (ice in friend_accessible_p)

PR c++/67407

* search.c (dfs_walk_once, dfs_walk_once_r)
(dfs_walk_once_accessible_r, dfs_walk_once_accessible): Use
hash_set instead of BINFO_MARKED.
(dfs_unmark_r): Remove.

From-SVN: r232929

8 years ago* directives.c (destringize_and_run): Adjust prototype.
Jakub Jelinek [Thu, 28 Jan 2016 14:33:55 +0000 (15:33 +0100)]
* directives.c (destringize_and_run): Adjust prototype.

From-SVN: r232928

8 years agopr65980.c: Skip on AIX.
David Edelsohn [Thu, 28 Jan 2016 13:52:06 +0000 (13:52 +0000)]
pr65980.c: Skip on AIX.

        * gcc.dg/pr65980.c: Skip on AIX.
        * gcc.dg/pr66688.c: Same.

From-SVN: r232927

8 years agore PR target/63679 ([AArch64] Failure to constant fold.)
David Edelsohn [Thu, 28 Jan 2016 13:48:00 +0000 (13:48 +0000)]
re PR target/63679 ([AArch64] Failure to constant fold.)

        PR target/63679
        * gcc.dg/tree-ssa/sra-17.c: Adjust regex for more label styles.
        * gcc.dg/tree-ssa/sra-18.c: Same.

From-SVN: r232926

8 years agore PR libstdc++/69450 (libstdc++-v3/include/math.h:66:1 2: error: 'constexpr bool...
John David Anglin [Thu, 28 Jan 2016 13:09:23 +0000 (13:09 +0000)]
re PR libstdc++/69450 (libstdc++-v3/include/math.h:66:1 2: error: 'constexpr bool std::isnan(double)' conflicts with a previous declaration)

PR libstdc++/69450
* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
isinf and isnan functions into two independent checks.  Check on hpux.
* config.h.in: Regenerate.
* configure: Regenerate.
* include/c_global/cmath (isinf(double), isnan(double)): Use
_GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
respectively.

From-SVN: r232925

8 years agogigi.h (enum attr_type): Rename into...
Eric Botcazou [Thu, 28 Jan 2016 11:59:14 +0000 (11:59 +0000)]
gigi.h (enum attr_type): Rename into...

* gcc-interface/gigi.h (enum attr_type): Rename into...
(enum attrib_type): ...this.
(struct attrib): Adjust.
* gcc-interface/decl.c (prepend_one_attribute): Likewise.

From-SVN: r232923

8 years agoAdd support for vector permute cost since various permutes can expand into a complex...
Wilco Dijkstra [Thu, 28 Jan 2016 11:52:08 +0000 (11:52 +0000)]
Add support for vector permute cost since various permutes can expand into a complex sequence of instructions.

Add support for vector permute cost since various permutes can expand
into a complex sequence of instructions.  This fixes major performance
regressions due to recent changes in SLP vectorizer (which now vectorizes
more aggressively and emits many complex permutes).  Set the cost to > 1
for all microarchitectures so that the number of permutes is usually zero
and regressions disappear.

2016-01-28  Wilco Dijkstra  <wdijkstr@arm.com>

* config/aarch64/aarch64.c (generic_vector_cost):
Set vec_permute_cost.
(cortexa57_vector_cost): Likewise.
(exynosm1_vector_cost): Likewise.
(xgene1_vector_cost): Likewise.
(aarch64_builtin_vectorization_cost): Use vec_permute_cost.
* config/aarch64/aarch64-protos.h (cpu_vector_cost):
Add vec_permute_cost entry.

From-SVN: r232922

8 years agoSeveral instructions disassemble a zero immediate as wzr/xzr due to using a register...
Wilco Dijkstra [Thu, 28 Jan 2016 11:45:06 +0000 (11:45 +0000)]
Several instructions disassemble a zero immediate as wzr/xzr due to using a register operand in the disassembly.

Several instructions disassemble a zero immediate as wzr/xzr due to
using a register operand in the disassembly.  Avoid this by removing
the register operand.

2016-01-28  Wilco Dijkstra  <wdijkstr@arm.com>

* config/aarch64/aarch64.md (ccmp<mode>): Disassemble
immediate as %1.
(add<mode>3_compare0): Likewise.
(addsi3_compare0_uxtw): Likewise.
(add<mode>3nr_compare0): Likewise.
(compare_neg<mode>): Likewise.
(<optab><mode>3): Likewise.

From-SVN: r232921

8 years agoAdded missing testcase of r232919.
Andre Vehreschild [Thu, 28 Jan 2016 11:41:10 +0000 (12:41 +0100)]
Added missing testcase of r232919.

From-SVN: r232920

8 years agore PR fortran/62536 (ICE (segfault) for invalid END BLOCK statement)
Andre Vehreschild [Thu, 28 Jan 2016 11:34:03 +0000 (12:34 +0100)]
re PR fortran/62536 (ICE (segfault) for invalid END BLOCK statement)

gcc/fortran/ChangeLog:

2016-01-28  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/62536
* decl.c (gfc_match_end): Only unnest and remove BLOCK namespaces
when the END encountered does not match a BLOCK's end.

gcc/testsuite/ChangeLog:

2016-01-28  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/62536
* gfortran.dg/block_15.f08: New test.
* gfortran.dg/block_end_error_1.f90: Need to catch additional error
on incorrectly closed BLOCK.

From-SVN: r232919

8 years agotree-vect-stmts.c (vectorizable_comparison): Add NULL check for vectype.
Ilya Enkovich [Thu, 28 Jan 2016 10:09:12 +0000 (10:09 +0000)]
tree-vect-stmts.c (vectorizable_comparison): Add NULL check for vectype.

gcc/

* tree-vect-stmts.c (vectorizable_comparison): Add
NULL check for vectype.

gcc/testsuite/

* gcc.dg/declare-simd.c: New test.

From-SVN: r232917

8 years agore PR tree-optimization/69466 (ICE: Invalid PHI argument after vectorization (on...
Richard Biener [Thu, 28 Jan 2016 09:10:30 +0000 (09:10 +0000)]
re PR tree-optimization/69466 (ICE: Invalid PHI argument after vectorization (on -O2))

2016-01-28  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69466
* tree-vect-loop-manip.c (slpeel_duplicate_current_defs_from_edges):
Account for PHIs we couldn't duplicate.

* gfortran.dg/vect/pr69466.f90: New testcase.

From-SVN: r232916

8 years agore PR pch/68758 (Invalid read of size 8 in gt_pch_save (ggc-common.c:551))
Martin Liska [Thu, 28 Jan 2016 08:39:05 +0000 (09:39 +0100)]
re PR pch/68758 (Invalid read of size 8 in gt_pch_save (ggc-common.c:551))

Fix PR pch/68758.

PR pch/68758
* ggc-common.c (gt_pch_save): Use ENABLE_VALGRIND_ANNOTATIONS macro
instead of ENABLE_VALGRIND_CHECKING.

From-SVN: r232915

8 years agocorrect ChangeLogs for PR69422
Paul Thomas [Thu, 28 Jan 2016 06:52:15 +0000 (06:52 +0000)]
correct ChangeLogs for PR69422

From-SVN: r232914

8 years agopr67989.C: Remove ARM-specific option.
Thomas Preud'homme [Thu, 28 Jan 2016 06:29:10 +0000 (06:29 +0000)]
pr67989.C: Remove ARM-specific option.

2016-01-28  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/testsuite/
    * g++.dg/pr67989.C: Remove ARM-specific option.
    * gcc.target/arm/pr67989.C: New file.

From-SVN: r232913

8 years agoLow-hanging C++-lexer speedup (PR c++/24208)
Patrick Palka [Thu, 28 Jan 2016 01:06:29 +0000 (01:06 +0000)]
Low-hanging C++-lexer speedup (PR c++/24208)

gcc/cp/ChangeLog:

PR c++/24208
* parser.c (LEXER_DEBUGGING_ENABLED_P): New macro.
(cp_lexer_debugging_p): Use it.
(cp_lexer_start_debugging): Likewise.
(cp_lexer_stop_debugging): Likewise.

From-SVN: r232912

8 years agoDaily bump.
GCC Administrator [Thu, 28 Jan 2016 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r232911

8 years agopr68264.c: Disable log1p test for glibc < 2.22 and expm1 test for glibc < 2.11.
Uros Bizjak [Wed, 27 Jan 2016 23:04:25 +0000 (00:04 +0100)]
pr68264.c: Disable log1p test for glibc < 2.22 and expm1 test for glibc < 2.11.

* gcc.dg/torture/pr68264.c: Disable log1p test for glibc < 2.22
and expm1 test for glibc < 2.11.

From-SVN: r232907

8 years agore PR fortran/69484 (documentation issue: -Wtabs and -Wall)
Janus Weil [Wed, 27 Jan 2016 22:32:52 +0000 (23:32 +0100)]
re PR fortran/69484 (documentation issue: -Wtabs and -Wall)

2016-01-27  Janus Weil  <janus@gcc.gnu.org>

PR fortran/69484
* invoke.texi: Fix documentation of -Wall with respect to -Wtabs.

From-SVN: r232906

8 years agore PR rtl-optimization/69447 (wrong code with -O2 -fno-schedule-insns and mixed 8...
Richard Henderson [Wed, 27 Jan 2016 22:08:02 +0000 (14:08 -0800)]
re PR rtl-optimization/69447 (wrong code with -O2 -fno-schedule-insns and mixed 8/16/32/64bit arithmetics @ armv7a)

PR rtl-opt/69447

  * lra-remat.c (subreg_regs): New.
  (dump_candidates_and_remat_bb_data): Dump it.
  (operand_to_remat): Reject if operand in subreg_regs.
  (set_bb_regs): Collect subreg_regs.
  (lra_remat): Init and free subreg_regs.  Compute
  calculate_local_reg_remat_bb_data before create_cands.

From-SVN: r232905

8 years ago[multiple changes]
Paul Thomas [Wed, 27 Jan 2016 21:24:01 +0000 (21:24 +0000)]
[multiple changes]

2016-01-27  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/69385
* trans-expr.c (is_scalar_reallocatable_lhs): Remove the check
for allocatable components, whilst checking if the symbol is a
derived or class entity..

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

PR fortran/69385
* gfortran.dg/alloc_comp_assign_15.f03: New test.

From-SVN: r232904

8 years agoDon't change stack_alignment_needed for __tls_get_addr
H.J. Lu [Wed, 27 Jan 2016 19:54:03 +0000 (19:54 +0000)]
Don't change stack_alignment_needed for __tls_get_addr

__tls_get_addr must be called with 16-byte aligned stack, which is
guaranted by setting preferred_stack_boundary to 128 bits.  There
is no need to change stack_alignment_needed for __tls_get_addr.

PR target/68986
* config/i386/i386.c (ix86_update_stack_boundary): Don't
change stack_alignment_needed for __tls_get_addr call.

From-SVN: r232901

8 years agors6000: Put back the 's' output modifier
Segher Boessenkool [Wed, 27 Jan 2016 19:44:31 +0000 (20:44 +0100)]
rs6000: Put back the 's' output modifier

It turns out the 's' output modifier is used in some glibc math code,
and is in an installed header even.  So let's put it back, it is much
less of a burden supporting it a bit longer than to deal with the fallout.
(It is also being fixed for glibc.)

* config/rs6000/rs6000.c (print_operand): Rollback 's' removal.

From-SVN: r232900

8 years agore PR debug/66869 (-Wunused-function no longer warns for static declarations without...
Jakub Jelinek [Wed, 27 Jan 2016 19:32:49 +0000 (20:32 +0100)]
re PR debug/66869 (-Wunused-function no longer warns for static declarations without definition)

PR debug/66869
* c-decl.c (c_write_global_declarations_1): Warn with
warn_unused_function if static prototype without definition
is not C_DECL_USED.

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

From-SVN: r232899

8 years ago* testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
Jakub Jelinek [Wed, 27 Jan 2016 19:31:06 +0000 (20:31 +0100)]
* testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.

From-SVN: r232898

8 years agore PR tree-optimization/68398 (coremark regression due to r229685)
Jeff Law [Wed, 27 Jan 2016 19:19:47 +0000 (12:19 -0700)]
re PR tree-optimization/68398 (coremark regression due to r229685)

PR tree-optimization/68398
* params.def (PARAM_FSM_SCALE_PATH_STMTS): New parameter.
(PARAM_FSM_SCALE_PATH_BLOCKS): Likewise.
* tree-ssa-threadbackward.c (fsm_find_control_statement_thread_paths):
Only count PHIs in the last block in the path.  The others will
const/copy propagate away.  Add heuristic to allow more irreducible
subloops to be created when it is likely profitable to do so.

* tree-ssa-threadbackward.c (fsm_find_control_statement_thread_paths):
Fix typo in comment.  Use gsi_after_labels and remove the GIMPLE_LABEL
check from within the loop.  Use gsi_next_nondebug rather than gsi_next.

PR tree-optimization/68398
* gcc.dg/tree-ssa/pr66752-3.c: Update expected output.
* gcc.dg/tree-ssa/ssa-dom-thread-2c.c: Add extra statements on thread
path to avoid new heuristic allowing more irreducible regions
* gcc.dg/tree-ssa/ssa-dom-thread-2d.c: Likewise.
* gcc.dg/tree-ssa/vrp46.c: Likewise.
* gcc.dg/tree-ssa/ssa-dom-thread-7.c: Update expected output.
* gcc.dg/tree-ssa/ssa-dom-thread-2g.c: New test.
* gcc.dg/tree-ssa/ssa-dom-thread-2h.c: Likewise.

From-SVN: r232897

8 years agore PR c/68062 (ICE when comparing vectors)
Marek Polacek [Wed, 27 Jan 2016 19:13:42 +0000 (19:13 +0000)]
re PR c/68062 (ICE when comparing vectors)

PR c/68062
* c-typeck.c (build_binary_op) [EQ_EXPR, GE_EXPR]: Promote operand
to unsigned, if needed.  Add -Wsign-compare warning.

* typeck.c (cp_build_binary_op): Promote operand to unsigned, if
needed.  Add -Wsign-compare warning.

* c-c++-common/vector-compare-4.c: New test.

From-SVN: r232894

8 years agolibcpp: use better locations for _Pragma tokens (preprocessor/69126)
David Malcolm [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.

From-SVN: r232893

8 years agocompiler: Accept map composite literals with omitted key types.
Ian Lance Taylor [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

From-SVN: r232892

8 years agore PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on...
Jakub Jelinek [Wed, 27 Jan 2016 18:48:30 +0000 (19:48 +0100)]
re PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on the compile side only)

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.

From-SVN: r232891

8 years agogo-lang.c (go_langhook_init_options_struct): Default to -fkeep-gc-roots-live.
Ian Lance Taylor [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.

* go-lang.c (go_langhook_init_options_struct): Default to
-fkeep-gc-roots-live.

From-SVN: r232890

8 years agocommon.opt (fkeep-gc-roots-live): New undocumented option.
Ian Lance Taylor [Wed, 27 Jan 2016 17:42:47 +0000 (17:42 +0000)]
common.opt (fkeep-gc-roots-live): New undocumented option.

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.

From-SVN: r232888

8 years agore PR c++/69267 ([cilkplus] ICE when calling a function with an empty class as an...
Ryan Burn [Wed, 27 Jan 2016 17:17:23 +0000 (17:17 +0000)]
re PR c++/69267 ([cilkplus] ICE when calling a function with an empty class as an argument)

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.

From-SVN: r232887

8 years agore PR target/69512 (ICE when using avx with i586)
Uros Bizjak [Wed, 27 Jan 2016 17:08:00 +0000 (18:08 +0100)]
re PR target/69512 (ICE when using avx with i586)

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.

From-SVN: r232885

8 years agore PR target/68380 (NetBSD has SSP in libc)
Thomas Klausner [Wed, 27 Jan 2016 16:54:48 +0000 (16:54 +0000)]
re PR target/68380 (NetBSD has SSP in libc)

2016-01-27  Thomas Klausner  <wiz@NetBSD.org>

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

From-SVN: r232884

8 years agore PR ada/69488 (tests in gnat/sso give a lot of spurious failures)
Rainer Emrich [Wed, 27 Jan 2016 16:53:27 +0000 (16:53 +0000)]
re PR ada/69488 (tests in gnat/sso give a lot of spurious failures)

PR ada/69488
* gnat.dg/sso/*.adb: Robustify dg-output directives.

From-SVN: r232883

8 years agore PR c++/69379 (ICE in fold_convert_loc, at fold-const.c:2366)
Marek Polacek [Wed, 27 Jan 2016 16:46:40 +0000 (16:46 +0000)]
re PR c++/69379 (ICE in fold_convert_loc, at fold-const.c:2366)

PR c++/69379
* constexpr.c (cxx_eval_constant_expression): Handle PTRMEM_CSTs
wrapped in NOP_EXPRs.

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

From-SVN: r232882

8 years agoPR c++/69317 - [6 regression] wrong ABI version in -Wabi warnings
Martin Sebor [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.

From-SVN: r232881

8 years agoMAINTAINERS: (Write After Approval): Add myself.
Wilco Dijkstra [Wed, 27 Jan 2016 15:12:10 +0000 (15:12 +0000)]
MAINTAINERS: (Write After Approval): Add myself.

2015-01-27  Wilco Dijkstra  <wdijkstr@arm.com>

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

From-SVN: r232880

8 years agoSet FP options for failing special functions tests
Jonathan Wakely [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.

From-SVN: r232879

8 years agore PR tree-optimization/69166 (ICE in get_initial_def_for_reduction, at tree-vect...
Richard Biener [Wed, 27 Jan 2016 14:54:03 +0000 (14:54 +0000)]
re PR tree-optimization/69166 (ICE in get_initial_def_for_reduction, at tree-vect-loop.c:4188)

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.

From-SVN: r232878

8 years ago[PR 69355] Correct hole detection when total_scalarization fails
Martin Jambor [Wed, 27 Jan 2016 14:51:17 +0000 (15:51 +0100)]
[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.

From-SVN: r232877

8 years agore PR c++/69496 ([C++ 14] ICE on VLA in constexpr function)
Marek Polacek [Wed, 27 Jan 2016 14:26:38 +0000 (14:26 +0000)]
re PR c++/69496 ([C++ 14] ICE on VLA in constexpr function)

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.

From-SVN: r232875

8 years agodriver-rs6000.c (detect_processor_aix): Add power9.
David Edelsohn [Wed, 27 Jan 2016 13:31:51 +0000 (08:31 -0500)]
driver-rs6000.c (detect_processor_aix): Add power9.

        * config/rs6000/driver-rs6000.c (detect_processor_aix): Add
        power9.

From-SVN: r232873

8 years agore PR target/69245 (ICE in extract_insn, at recog.c:2286 on arm-linux-gnueabihf)
Christian Bruel [Wed, 27 Jan 2016 13:03:45 +0000 (14:03 +0100)]
re PR target/69245 (ICE in extract_insn, at recog.c:2286 on arm-linux-gnueabihf)

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.

From-SVN: r232872

8 years agoHSA: simplify partitioning of HSA kernels and host impls.
Martin Liska [Wed, 27 Jan 2016 12:50:05 +0000 (13:50 +0100)]
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.

From-SVN: r232871

8 years agore PR tree-optimization/69399 (wrong code with -O and int128)
Jakub Jelinek [Wed, 27 Jan 2016 11:40:04 +0000 (12:40 +0100)]
re PR tree-optimization/69399 (wrong code with -O and int128)

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.

From-SVN: r232869

8 years ago[ARC] Reject constant-constant comparison.
Claudiu Zissulescu [Wed, 27 Jan 2016 09:29:16 +0000 (10:29 +0100)]
[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.

From-SVN: r232868

8 years ago* gcc.dg/tree-ssa/ssa-dom-cse-2.c: XFAIL on SPARC 64-bit.
Eric Botcazou [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.

From-SVN: r232867

8 years agod-demangle.c (dlang_call_convention): Handle extern Objective-C function calling...
Iain Buclaw [Wed, 27 Jan 2016 01:07:26 +0000 (01:07 +0000)]
d-demangle.c (dlang_call_convention): Handle extern Objective-C function calling convention.

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.

From-SVN: r232864

8 years agod-demangle.c (dlang_function_args): Append ',' for variadic functions only if paramet...
Iain Buclaw [Wed, 27 Jan 2016 01:07:17 +0000 (01:07 +0000)]
d-demangle.c (dlang_function_args): Append ',' for variadic functions only if parameters were seen before the...

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.

From-SVN: r232863

8 years agod-demangle.c (dlang_type): Handle function types only in the context of seeing a...
Iain Buclaw [Wed, 27 Jan 2016 01:07:08 +0000 (01:07 +0000)]
d-demangle.c (dlang_type): Handle function types only in the context of seeing a pointer type symbol.

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.

From-SVN: r232862

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

From-SVN: r232861

8 years agocompiler: Don't crash on erroneous array return types.
Ian Lance Taylor [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

From-SVN: r232858

8 years agocompiler: Don't crash on invalid array type declarations.
Ian Lance Taylor [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

From-SVN: r232857

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

From-SVN: r232856

8 years agocompiler: Avoid knock-on errors with impossibly large types.
Ian Lance Taylor [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

From-SVN: r232855

8 years agoHandle DR_NUM_DIMENSIONS == 0 in initialize_data_dependence_relation
Tom de 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.

From-SVN: r232852

8 years agohandle isl_ast_op_select
Abderrazek Zaafrani [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.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r232851

8 years ago[multiple changes]
Paul Thomas [Tue, 26 Jan 2016 21:57:12 +0000 (21:57 +0000)]
[multiple changes]

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.

From-SVN: r232850

8 years agore PR c++/68949 (Implicit initialization of array member silently miscompiling.)
Jason Merrill [Tue, 26 Jan 2016 21:34:16 +0000 (16:34 -0500)]
re PR c++/68949 (Implicit initialization of array member silently miscompiling.)

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.

From-SVN: r232848

8 years agore PR c++/68782 (bad reference member formed with constexpr)
Jason Merrill [Tue, 26 Jan 2016 21:34:10 +0000 (16:34 -0500)]
re PR c++/68782 (bad reference member formed with constexpr)

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.

From-SVN: r232847

8 years agore PR rtl-optimization/69217 (ICE at var-tracking.c:5038 Segmentation fault)
Iain Buclaw [Tue, 26 Jan 2016 20:57:37 +0000 (20:57 +0000)]
re PR rtl-optimization/69217 (ICE at var-tracking.c:5038 Segmentation fault)

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.

From-SVN: r232845

8 years agore PR target/68662 (FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1...
Jakub Jelinek [Tue, 26 Jan 2016 19:53:37 +0000 (20:53 +0100)]
re PR target/68662 (FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O2 -flto -flto-partition=none -fuse-linker-plugin -fno-fat-lto-objects)

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.

From-SVN: r232844

8 years agore PR c++/68357 (FAIL: g++.dg/other/darwin-cfstring1.C -std=* (internal compiler...
Jakub Jelinek [Tue, 26 Jan 2016 19:52:53 +0000 (20:52 +0100)]
re PR c++/68357 (FAIL: g++.dg/other/darwin-cfstring1.C  -std=* (internal compiler error) on x86_64-apple-darwin1(0|4|5))

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.

From-SVN: r232843

8 years agoFix assertions for move assignment of trivial types
Jonathan Wakely [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.

From-SVN: r232842

8 years agoPR other/69477 - attribute aligned documentation misleading
Martin Sebor [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.

From-SVN: r232840

8 years agore PR middle-end/60908 (compiler bug related to trans-mem.c)
Richard Henderson [Tue, 26 Jan 2016 17:29:02 +0000 (09:29 -0800)]
re PR middle-end/60908 (compiler bug related to trans-mem.c)

PR middle-end/60908

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

From-SVN: r232839

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

From-SVN: r232838

8 years agoPR other/69006: fix extra newlines after diagnostics
David Malcolm [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.

From-SVN: r232837

8 years agoconfigure.ac (ac_cv_std_swap_in_utility): New test.
Michael Matz [Tue, 26 Jan 2016 16:34:24 +0000 (16:34 +0000)]
configure.ac (ac_cv_std_swap_in_utility): New test.

* 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.

From-SVN: r232836

8 years agoFix build failure when wide character support is not available
Andris Pavenis [Tue, 26 Jan 2016 16:07:33 +0000 (18:07 +0200)]
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.

From-SVN: r232835

8 years ago[ARC] Fix arcset* pattern's predicate.
Claudiu Zissulescu [Tue, 26 Jan 2016 16:06:16 +0000 (17:06 +0100)]
[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.

From-SVN: r232834

8 years agore PR tree-optimization/69483 (gcc ICE on x86_64-linux-gnu with "expected class ...
Jakub Jelinek [Tue, 26 Jan 2016 15:51:51 +0000 (16:51 +0100)]
re PR tree-optimization/69483 (gcc ICE on x86_64-linux-gnu with "expected class 'type', have 'exceptional' (error_mark) in useless_type_conversion_p")

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.

From-SVN: r232833

8 years agore PR target/68620 (ICE on gcc.target/arm/attr-neon-fp16.c)
Christophe Lyon [Tue, 26 Jan 2016 15:17:00 +0000 (15:17 +0000)]
re PR target/68620 (ICE on gcc.target/arm/attr-neon-fp16.c)

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.

From-SVN: r232832

8 years agoRemove -m32 from gcc.target/i386/pr68986-2.c
H.J. Lu [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.

From-SVN: r232831

8 years agoomp-low.h (oacc_fn_attrib_kernels_p): Declare.
Nathan Sidwell [Tue, 26 Jan 2016 14:32:30 +0000 (14:32 +0000)]
omp-low.h (oacc_fn_attrib_kernels_p): Declare.

* 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.

From-SVN: r232830

8 years agore PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on...
Jakub Jelinek [Tue, 26 Jan 2016 14:25:56 +0000 (15:25 +0100)]
re PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on the compile side only)

PR lto/69254
* lto-wrapper.c (merge_and_complain): Handle -fcilkplus.
(append_compiler_options): Handle -fcilkplus.
(append_linker_options): Ignore -fno-{openmp,openacc,cilkplus}.

From-SVN: r232829

8 years agore PR target/66655 (miscompilation due to ipa-ra on MinGW)
Nick Clifton [Tue, 26 Jan 2016 14:02:11 +0000 (14:02 +0000)]
re PR target/66655 (miscompilation due to ipa-ra on MinGW)

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.

From-SVN: r232828

8 years agore PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on...
Jakub Jelinek [Tue, 26 Jan 2016 13:01:44 +0000 (14:01 +0100)]
re PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on the compile side only)

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.

From-SVN: r232826

8 years agoUpdate stack alignment in ix86_update_stack_boundary
H.J. Lu [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.

From-SVN: r232825

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

From-SVN: r232824

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

From-SVN: r232822

8 years agore PR tree-optimization/69467 (Pattern X * C1 CMP 0 to X CMP 0 causes performance...
Richard Biener [Tue, 26 Jan 2016 12:05:22 +0000 (12:05 +0000)]
re PR tree-optimization/69467 (Pattern X * C1 CMP 0 to X CMP 0 causes performance drop on 32-bit x86.)

2016-01-26  Richard Biener  <rguenther@suse.de>

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

From-SVN: r232821

8 years agore PR tree-optimization/69452 (gcc ICE at -O3 on x86_64-linux-gnu in with verify_ssa...
Richard Biener [Tue, 26 Jan 2016 11:51:01 +0000 (11:51 +0000)]
re PR tree-optimization/69452 (gcc ICE at -O3 on x86_64-linux-gnu in with verify_ssa failed)

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.

From-SVN: r232820

8 years agore PR target/69442 (wrong code with -Og and 64bit modulo @ armv7a)
Jakub Jelinek [Tue, 26 Jan 2016 11:12:03 +0000 (12:12 +0100)]
re PR target/69442 (wrong code with -Og and 64bit modulo @ armv7a)

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.

From-SVN: r232819

8 years ago[PATCH] Do not set structural equality on polynomial types
Roger Ferrer Ibáñez [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.

From-SVN: r232818

8 years agoPR 69400: Invalid 128-bit modulus result
Richard Sandiford [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.

From-SVN: r232817

8 years agopr68674.c: Check and use arm_fp effective target.
Christophe Lyon [Tue, 26 Jan 2016 09:45:43 +0000 (09:45 +0000)]
pr68674.c: Check and use arm_fp effective target.

2016-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

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

From-SVN: r232816

8 years agoAdd missing includes in JIT frontend.
Iain Buclaw [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.

From-SVN: r232815

8 years agonew scop schedule for isl-0.15
Aditya Kumar [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.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r232812

8 years agofix PR68343: disable fuse-*.c tests for isl 0.14 or earlier
Aditya Kumar [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.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r232811

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

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r232810

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

From-SVN: r232809