Martin Liska [Fri, 17 Feb 2017 14:46:14 +0000 (15:46 +0100)]
Use HOST_WIDE_INT for a param calculation (PR rtl-optimization/79574).
2017-02-17 Martin Liska <mliska@suse.cz>
PR rtl-optimization/79574
* gcc.dg/pr79574.c: New test.
2017-02-17 Martin Liska <mliska@suse.cz>
PR rtl-optimization/79574
* gcse.c (want_to_gcse_p): Prevent integer overflow.
From-SVN: r245531
Martin Liska [Fri, 17 Feb 2017 14:36:08 +0000 (15:36 +0100)]
Introduce ssa_defined_default_def_p function (PR tree-optimization/79529).
2017-02-17 Martin Liska <mliska@suse.cz>
PR tree-optimization/79529
* tree-ssa-loop-unswitch.c (is_maybe_undefined): Use
ssa_defined_default_def_p to handle cases which are implicitly
defined.
* tree-ssa.c (ssa_defined_default_def_p): New function.
(ssa_undefined_value_p): Use ssa_defined_default_def_p to handle cases
which are implicitly defined.
* tree-ssa.h (ssa_defined_default_def_p): Declare.
From-SVN: r245530
Richard Biener [Fri, 17 Feb 2017 13:36:39 +0000 (13:36 +0000)]
re PR tree-optimization/79576 (ICE in gimple_stmt_nonnegative_warnv_p in gcc/gimple-fold.c:6979)
2017-02-17 Richard Biener <rguenther@suse.de>
PR middle-end/79576
* params.def (max-ssa-name-query-depth): Limit to 10.
From-SVN: r245529
Richard Biener [Fri, 17 Feb 2017 10:43:27 +0000 (10:43 +0000)]
re PR inline-asm/79552 (Wrong code generation due to -fschedule-insns, with __restrict__ and inline asm)
2017-02-17 Richard Biener <rguenther@suse.de>
PR tree-optimization/79552
* tree-ssa-structalias.c (visit_loadstore): Properly verify
default defs.
From-SVN: r245528
Richard Biener [Fri, 17 Feb 2017 10:19:21 +0000 (10:19 +0000)]
re PR bootstrap/79567 (Compiler-warning "unknown escape sequence '\x'" about genmatch-generated C-files on mingw-host)
2017-02-17 Richard Biener <rguenther@suse.de>
PR bootstrap/79567
* genmatch.c (output_line_directive): Handle DIR_SEPARATOR_2.
From-SVN: r245527
Marek Polacek [Fri, 17 Feb 2017 09:51:38 +0000 (09:51 +0000)]
re PR middle-end/79536 (ICE in fold_binary_loc, at fold-const.c:9060)
PR middle-end/79536
* fold-const.c (fold_negate_expr_1): Renamed from fold_negate_expr.
(fold_negate_expr): New wrapper.
* gcc.dg/torture/pr79536.c: New test.
From-SVN: r245526
Sandra Loosemore [Fri, 17 Feb 2017 04:48:36 +0000 (23:48 -0500)]
invoke.texi (C++ Dialect Options): Correct terminology and de-emphasize pre-standard behavior.
2017-02-16 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/invoke.texi (C++ Dialect Options) [-Wno-non-template-friend]:
Correct terminology and de-emphasize pre-standard behavior.
From-SVN: r245525
GCC Administrator [Fri, 17 Feb 2017 00:16:20 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r245524
Alan Modra [Thu, 16 Feb 2017 22:56:51 +0000 (09:26 +1030)]
re PR rtl-optimization/79286 (ira and lra wrong code at -O2 and -Os on i686-linux)
2017-02-16 Alan Modra <amodra@gmail.com>
PR rtl-optimization/79286
* ira.c (def_dominates_uses): New function.
(update_equiv_regs): Don't create an equivalence for insns that
may trap where the register def does not dominate the use.
* gcc.c-torture/execute/pr79286.c: New.
From-SVN: r245521
Andreas Tobler [Thu, 16 Feb 2017 21:23:51 +0000 (22:23 +0100)]
re PR sanitizer/79562 (sanitizer breaks bootstrap of x86_64-*-freebsd)
2017-02-16 Andreas Tobler <andreast@gcc.gnu.org>
PR sanitizer/79562
* sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry-pick
upstream r294806.
From-SVN: r245520
Jakub Jelinek [Thu, 16 Feb 2017 19:49:19 +0000 (20:49 +0100)]
PR c++/79502 - lost nodiscard attribute
* pt.c (apply_late_template_attributes): Do apply non-dependent
attributes to types.
Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r245516
Jason Merrill [Thu, 16 Feb 2017 19:49:13 +0000 (14:49 -0500)]
* g++.dg/cpp0x/constexpr-70001-[34].C: Only run as C++14.
From-SVN: r245515
Vladimir Makarov [Thu, 16 Feb 2017 19:47:15 +0000 (19:47 +0000)]
re PR rtl-optimization/78127 (AArch64 internal compiler error: in lra_eliminate, at lra-eliminations.c:1440)
2017-02-16 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/78127
* lra.c (lra): Call lra_eliminate before finish the loop after
lra_constraint.
From-SVN: r245514
Gerald Pfeifer [Thu, 16 Feb 2017 19:38:47 +0000 (19:38 +0000)]
exgettext (BUGURL): Introduce, and use instead of four hardcoded instances.
* exgettext (BUGURL): Introduce, and use instead of four
hardcoded instances.
From-SVN: r245513
Jason Merrill [Thu, 16 Feb 2017 16:42:06 +0000 (11:42 -0500)]
PR c++/78572 - ICE with self-modifying array initializer
* constexpr.c (cxx_eval_store_expression): The object we're
initializing is outside the constant-expression.
From-SVN: r245511
Jason Merrill [Thu, 16 Feb 2017 16:42:00 +0000 (11:42 -0500)]
PR c++/79050 - ICE with undeduced auto and LTO
* decl.c (poplevel): Remove undeduced auto decls.
From-SVN: r245510
Andrew Pinski [Thu, 16 Feb 2017 16:27:42 +0000 (16:27 +0000)]
value-unwind.h: New file.
* config/aarch64/value-unwind.h: New file.
* config.host (aarch64*-*-*): Add aarch64/value-unwind.h
to tm_file.
From-SVN: r245508
Gerald Pfeifer [Thu, 16 Feb 2017 15:25:18 +0000 (15:25 +0000)]
policy_data_structures.xml: Simplify and standardize references to boost.org.
* doc/xml/manual/policy_data_structures.xml: Simplify and
standardize references to boost.org.
* doc/xml/manual/policy_data_structures_biblio.xml: Ditto.
* doc/xml/manual/shared_ptr.xml: Ditto.
From-SVN: r245507
Jonathan Wakely [Thu, 16 Feb 2017 12:06:28 +0000 (12:06 +0000)]
PR libstdc++/60936 fix length calculation
PR libstdc++/60936
* src/c++11/snprintf_lite.cc (__concat_size_t): Calculate length
written to buffer, not length remaining in buffer.
From-SVN: r245505
Jakub Jelinek [Thu, 16 Feb 2017 12:02:24 +0000 (13:02 +0100)]
re PR c++/79512 (ICE: Segfault in gimple_build_call_1, at gimple.c:218)
PR c++/79512
c/
* c-parser.c (c_parser_omp_target): For -fopenmp-simd
ignore #pragma omp target even when not followed by identifier.
cp/
* parser.c (cp_parser_omp_target): For -fopenmp-simd
ignore #pragma omp target even when not followed by identifier.
testsuite/
* c-c++-common/gomp/pr79512.c: New test.
From-SVN: r245504
Richard Biener [Thu, 16 Feb 2017 07:53:53 +0000 (07:53 +0000)]
graphite.h: Do not include isl/isl_val_gmp.h, instead include isl/isl_val.h.
2017-02-16 Richard Biener <rguenther@suse.de>
* graphite.h: Do not include isl/isl_val_gmp.h, instead include
isl/isl_val.h.
* graphite-isl-ast-to-gimple.c (gmp_cst_to_tree): Remove.
(gcc_expression_from_isl_expr_int): Use generic isl_val interface.
* graphite-sese-to-poly.c: Do not include isl/isl_val_gmp.h.
(isl_val_int_from_wi): New function.
(extract_affine_gmp): Rename to ...
(extract_affine_wi): ... this, take a widest_int.
(extract_affine_int): Just wrap extract_affine_wi.
(add_param_constraints): Use isl_val_int_from_wi.
(add_loop_constraints): Likewise, and extract_affine_wi.
From-SVN: r245501
Jeff Law [Thu, 16 Feb 2017 06:35:29 +0000 (23:35 -0700)]
re PR middle-end/79521 (Bootstrap failure on i686-linux starting with r245436)
PR middle-end/79521
* ira-costs.c (scan_one_insn): Check have_regs_of_mode before calling
ira_init_register_move_cost_if_necessary.
From-SVN: r245500
GCC Administrator [Thu, 16 Feb 2017 00:16:14 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r245499
Joseph Myers [Wed, 15 Feb 2017 20:46:46 +0000 (20:46 +0000)]
* es.po: Update.
From-SVN: r245496
Jason Merrill [Wed, 15 Feb 2017 20:29:08 +0000 (15:29 -0500)]
PR c++/79464 - ICE in IPA with omitted constructor parms
* class.c (build_clone): Also omit parms from TYPE_ARG_TYPES.
(adjust_clone_args): Adjust.
(add_method): Remember omitted parms.
* call.c (add_function_candidate): Likewise.
* mangle.c (write_method_parms): Likewise.
* method.c (ctor_omit_inherited_parms): Return false if there are no
parms to omit.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r245495
Martin Sebor [Wed, 15 Feb 2017 20:28:32 +0000 (20:28 +0000)]
PR c++/79363 - ICE with NSDMI and array
gcc/cp/ChangeLog:
PR c++/79363
* init.c (maybe_reject_flexarray_init): New function.
(perform_member_init): Call it.
gcc/testsuite/ChangeLog:
PR c++/79363
* g++.dg/ext/flexary12.C: Adjust.
* g++.dg/ext/flexary20.C: Same.
* g++.dg/ext/flexary21.C: Same.
* g++.dg/ext/flexary22.C: New test.
From-SVN: r245494
Martin Sebor [Wed, 15 Feb 2017 20:13:11 +0000 (20:13 +0000)]
re PR middle-end/32003 (Undocumented -fdump-tree options)
2017-02-15 Martin Sebor <msebor@redhat.com>
PR middle-end/32003
* doc/invoke.texi (-fdump-final-insns): Replace option accidentally
removed in a prior commit.
From-SVN: r245493
Bin Cheng [Wed, 15 Feb 2017 17:16:29 +0000 (17:16 +0000)]
re PR tree-optimization/79347 (vect_do_peeling is messing up profile)
PR tree-optimization/79347
* tree-vect-loop-manip.c (vect_do_peeling): Maintain profile
counters during peeling.
gcc/testsuite
* gcc.dg/vect/pr79347.c: New test.
From-SVN: r245490
Jakub Jelinek [Wed, 15 Feb 2017 17:10:40 +0000 (18:10 +0100)]
re PR c++/79301 (With -Werror=pedantic outside C++17 mode, __has_cpp_attribute(fallthrough) is nonzero but [[fallthrough]] fails)
PR c++/79301
* parser.c (cp_parser_std_attribute): Don't pedwarn about
[[deprecated]] with -std=c++11 and [[fallthrough]] with
-std=c++11 and -std=c++14.
* g++.dg/cpp1y/feat-cxx11-neg.C: Remove (with pedwarn) from
[[deprecated]] comment.
* g++.dg/cpp1y/feat-cxx98-neg.C: Likewise.
* g++.dg/cpp1y/feat-cxx11.C: Likewise.
* g++.dg/cpp1y/attr-deprecated-neg.C: Don't expect warnings for
[[deprecated]] in -std=c++11.
* g++.dg/cpp0x/fallthrough2.C: Don't expect warnings for
[[fallthrough]] in -std=c++11 and -std=c++14.
From-SVN: r245489
Jakub Jelinek [Wed, 15 Feb 2017 17:09:18 +0000 (18:09 +0100)]
re PR c++/79288 (TLS model wrong for static data members since r241137)
PR c++/79288
* decl.c (grokdeclarator): For static data members, handle thread_p
only after handling inline.
* g++.dg/tls/pr79288.C: New test.
From-SVN: r245488
Rainer Orth [Wed, 15 Feb 2017 16:35:54 +0000 (16:35 +0000)]
Enable libgomp.c/pr48591.c on __float128 targets
* testsuite/libgomp.c/pr48591.c: Enable on all __float128
targets.
Add __float128 options.
From-SVN: r245486
Marek Polacek [Wed, 15 Feb 2017 16:14:19 +0000 (16:14 +0000)]
re PR c/79515 (ICE: tree check: expected class 'type', have 'exceptional' (error_mark) in do_warn_double_promotion, at c-family/c-warn.c:1867)
PR c/79515
* c-warn.c (do_warn_double_promotion): Don't warn if an invalid
conversion has occured.
* gcc.dg/dfp/pr79515.c: New.
From-SVN: r245485
David Edelsohn [Wed, 15 Feb 2017 15:37:33 +0000 (15:37 +0000)]
* g++.dg/cpp0x/pr79296.C: Move dg-do compile directive first.
From-SVN: r245484
Thomas Schwinge [Wed, 15 Feb 2017 14:43:42 +0000 (15:43 +0100)]
Restore Graphite fuse-*.c testing
* Makefile.tpl: Remove HOST_ISLVER.
(HOST_EXPORTS): Remove ISLVER.
* Makefile.in: Regenerate.
gcc/
* Makefile.in (site.exp): Remove "set ISLVER".
gcc/testsuite/
* gcc.dg/graphite/graphite.exp: Merge "fuse_files" into
"opt_files".
From-SVN: r245483
Jakub Jelinek [Wed, 15 Feb 2017 12:19:53 +0000 (13:19 +0100)]
re PR target/79487 (Invalid _Decimal32 comparison on s390x)
PR target/79487
* real.c (real_from_integer): Call real_convert even for decimal.
* gcc.dg/dfp/pr79487.c: New test.
* c-c++-common/ubsan/float-cast-overflow-8.c (TEST): Revert
2017-02-13 change.
From-SVN: r245477
Dominik Vogt [Wed, 15 Feb 2017 09:27:57 +0000 (09:27 +0000)]
PR target/79241: S/390: define TARGET_CUSTOM_FUNCTION_DESCRIPTORS.
gcc/ChangeLog:
2017-02-15 Dominik Vogt <vogt@linux.vnet.ibm.com>
PR target/79421
* config/s390/s390.c: define TARGET_CUSTOM_FUNCTION_DESCRIPTORS.
From-SVN: r245476
Tim Shen [Wed, 15 Feb 2017 09:01:06 +0000 (09:01 +0000)]
re PR libstdc++/78723 ([variant] P0393r3: "Making variant greater equal again" is unimplemented)
PR libstdc++/78723
* include/std/variant (operator<(), operator>(), operator<=(),
operator>=(), operator==(), operator!=()): Implement P0393R3.
* testsuite/20_util/variant/compile.cc: Adjust tests.
* testsuite/20_util/variant/run.cc: Adjust tests.
From-SVN: r245475
Tim Shen [Wed, 15 Feb 2017 07:38:20 +0000 (07:38 +0000)]
re PR libstdc++/79513 (std::visit doesn't handle references)
PR libstdc++/79513
* include/std/variant (visit()): Forward variant types to the return
type detection code.
* testsuite/20_util/variant/compile.cc: Add test cases.
From-SVN: r245474
GCC Administrator [Wed, 15 Feb 2017 00:16:17 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r245464
Andrew Pinski [Wed, 15 Feb 2017 00:09:28 +0000 (00:09 +0000)]
aarch64-cores.def (thunderx2t99): Move to under 'C" cores and change the partno/implementer to be correct.
2017-02-14 Andrew Pinski <apinski@cavium.com>
* config/aarch64/aarch64-cores.def (thunderx2t99): Move to under 'C"
cores and change the partno/implementer to be correct.
(thunderx2t99p1): New core which replaces thunderx2t99 and still has
the 'B" as the implementer.
* config/aarch64/aarch64-tune.md: Regenerate.
From-SVN: r245461
Carl Love [Tue, 14 Feb 2017 23:11:19 +0000 (23:11 +0000)]
rs6000.c: Add case statement entry to make the xvcvuxdsp built-in argument unsigned.
gcc/ChangeLog:
2017-02-14 Carl Love <cel@us.ibm.com>
* config/rs6000/rs6000.c: Add case statement entry to make the
xvcvuxdsp built-in argument unsigned.
* config/rs6000/vsx.md: Fix the source and return operand types so they
match the instruction definitions from the ISA document. Fix typo
in the instruction generation for the (define_insn "vsx_xvcvuxdsp"
statement.
gcc/testsuite/ChangeLog:
2017-01-14 Carl Love <cel@us.ibm.com>
* gcc.target/powerpc/vsx-builtin-3.c: Add missing test case for the
xvcvsxdsp and xvcvuxdsp instructions.
From-SVN: r245460
Vladimir Makarov [Tue, 14 Feb 2017 22:17:19 +0000 (22:17 +0000)]
re PR target/79282 ([7 Regresion] FAIL: gcc.target/arm/neon-for-64bits-1.c scan-assembler-times vshr 0)
2017-02-14 Vladimir Makarov <vmakarov@redhat.com>
PR target/79282
* lra-int.h (struct lra_operand_data, struct lra_insn_reg): Add
member early_clobber_alts.
* lra-lives.c (reg_early_clobber_p): New.
(process_bb_lives): Use it.
* lra.c (new_insn_reg): New arg early_clobber_alts. Use it.
(debug_operand_data): Initialize early_clobber_alts.
(setup_operand_alternative): Set up early_clobber_alts.
(collect_non_operand_hard_regs): Ditto. Pass early clobber
alternatives to new_insn_reg.
(add_regs_to_insn_regno_info): Add arg early_clobber_alts. Use
it.
(lra_update_insn_regno_info): Pass the new arg.
From-SVN: r245459
Segher Boessenkool [Tue, 14 Feb 2017 20:27:54 +0000 (21:27 +0100)]
rs6000: Fix the vec-adde* testcases once more
David found the vec-adde{,c}-int128.c testcases fail on AIX. Those
tests should only run on targets that have int128.
This also changes the non-int128 testcases to check for the hardware
they require.
gcc/testsuite/
* gcc.target/powerpc/vec-adde-int128.c: Only run if int128 exists.
* gcc.target/powerpc/vec-addec-int128.c: Ditto.
* gcc.target/powerpc/vec-adde.c: Require vsx_hw, don't require a
64-bit default target.
* gcc.target/powerpc/vec-addec.c: Require p8vector_hw, don't require
a 64-bit default target.
From-SVN: r245453
Jakub Jelinek [Tue, 14 Feb 2017 19:40:27 +0000 (20:40 +0100)]
re PR middle-end/79505 (Memory leaks in oacc_loop_discover_walk)
PR middle-end/79505
* omp-offload.c (free_oacc_loop): Release loop->ifns vector.
(new_oacc_loop_raw): Don't clear already cleared fields.
From-SVN: r245445
Jakub Jelinek [Tue, 14 Feb 2017 19:39:17 +0000 (20:39 +0100)]
re PR target/79481 (AVX512PF: unmasked gather prefetch intrinsics missing)
PR target/79481
* config/i386/avx512pfintrin.h (_mm512_prefetch_i32gather_pd,
_mm512_prefetch_i32gather_ps, _mm512_prefetch_i64gather_pd,
_mm512_prefetch_i64gather_ps): New inline functions and macros.
* gcc.target/i386/sse-14.c (test_2vx): Add void return type.
(test_3vx): Change return type from int to void.
(_mm512_prefetch_i32gather_ps, _mm512_prefetch_i32scatter_ps,
_mm512_prefetch_i64gather_ps, _mm512_prefetch_i64scatter_ps,
_mm512_prefetch_i32gather_pd, _mm512_prefetch_i32scatter_pd,
_mm512_prefetch_i64gather_pd, _mm512_prefetch_i64scatter_pd): New
tests.
* gcc.target/i386/sse-22.c (test_2vx): Add void return type.
(test_3vx): Change return type from int to void.
(_mm512_prefetch_i32gather_ps, _mm512_prefetch_i32scatter_ps,
_mm512_prefetch_i64gather_ps, _mm512_prefetch_i64scatter_ps,
_mm512_prefetch_i32gather_pd, _mm512_prefetch_i32scatter_pd,
_mm512_prefetch_i64gather_pd, _mm512_prefetch_i64scatter_pd): New
tests.
* gcc.target/i386/avx512pf-vgatherpf0dpd-1.c: Add non-masked
intrinsic. Change scan-assembler-times number from 1 to 2.
* gcc.target/i386/avx512pf-vgatherpf0dps-1.c: Likewise.
* gcc.target/i386/avx512pf-vgatherpf0qpd-1.c: Likewise.
* gcc.target/i386/avx512pf-vgatherpf0qps-1.c: Likewise.
* gcc.target/i386/avx512pf-vgatherpf1dpd-1.c: Likewise.
* gcc.target/i386/avx512pf-vgatherpf1dps-1.c: Likewise.
* gcc.target/i386/avx512pf-vgatherpf1qpd-1.c: Likewise.
* gcc.target/i386/avx512pf-vgatherpf1qps-1.c: Likewise.
From-SVN: r245444
Uros Bizjak [Tue, 14 Feb 2017 17:54:01 +0000 (18:54 +0100)]
re PR middle-end/61225 (Several new failures after r210458 on x86_64-*-* with -m32)
PR middle-end/61225
* gcc.target/i386/pr49095.c: Add -fno-shrink-wrap to dg-options.
Use dg-additional-options for ia32 target. Remove XFAIL.
From-SVN: r245442
Uros Bizjak [Tue, 14 Feb 2017 17:52:37 +0000 (18:52 +0100)]
re PR target/79495 (ICE in extract_constrain_insn, at recog.c:2213)
PR target/79495
* config/i386/i386.md (*movxf_internal): Add (o,rC) alternative.
testsuite/ChangeLog:
2017-02-14 Uros Bizjak <ubizjak@gmail.com>
PR target/79495
* gcc.target/i386/pr79495.c: New test.
From-SVN: r245441
Marek Polacek [Tue, 14 Feb 2017 17:33:21 +0000 (17:33 +0000)]
re PR c++/79420 (ICE on invalid C++ code on x86_64-linux-gnu: in tsubst_copy, at cp/pt.c:14573)
PR c++/79420
PR c++/79463
* parser.c (cp_parser_postfix_dot_deref_expression): Avoid
clobbering if the postfix expression isn't an EXPR_P.
* g++.dg/cpp1y/pr79463.C: New.
* g++.dg/template/incomplete10.C: New.
* g++.dg/template/incomplete9.C: New.
From-SVN: r245440
H.J. Lu [Tue, 14 Feb 2017 16:53:22 +0000 (16:53 +0000)]
Properly store 128-bit constant in large model
When converting TI store with CONST_INT to V1TI store with CONST_VECTOR
in large model, an extra instruction may be needed to load CONST_VECTOR
into a register. Insert the extra instruction to the right place.
gcc/
PR target/79498
* config/i386/i386.c (timode_scalar_chain::convert_insn): Insert
the extra instruction to the right place to store 128-bit constant
when needed.
gcc/testsuite/
PR target/79498
* gcc.target/i386/pr79498.c: New test.
From-SVN: r245438
Martin Sebor [Tue, 14 Feb 2017 16:51:24 +0000 (16:51 +0000)]
PR middle-end/79448 - unhelpful -Wformat-truncation=2 warning
gcc/testsuite/ChangeLog:
PR middle-end/79448
* gcc.dg/tree-ssa/builtin-snprintf-warn-3.c: New test.
* gcc.dg/tree-ssa/pr79448-2.c: New test.
* gcc.dg/tree-ssa/pr79448.c: New test.
gcc/ChangeLog:
PR middle-end/79448
* gimple-ssa-sprintf.c (format_directive): Avoid issuing INT_MAX
warning for strings of unknown length.
From-SVN: r245437
Jeff Law [Tue, 14 Feb 2017 16:44:33 +0000 (09:44 -0700)]
re PR target/79404 (h8300: ICE at gcc/ira.c:5541 whilst building libgcc)
PR target/79404
* ira-costs.c (scan_one_insn): Initialize register move costs
for pseudos seen in USE/CLOBBER insns.
From-SVN: r245436
Segher Boessenkool [Tue, 14 Feb 2017 16:32:05 +0000 (17:32 +0100)]
rs6000: Synchronize the --with-cpu list in config.gcc with reality
power, power2, rios, rios1, rios2, rsc, rsc2 support was removed.
rs64a never was a supported option; it's spelled rs64.
power5+ and powerpc64le are supported options but could not be set as
default.
* config.gcc (supported_defaults) [powerpc*-*-*]: Update.
From-SVN: r245435
Jeff Law [Tue, 14 Feb 2017 15:54:09 +0000 (08:54 -0700)]
re PR tree-optimization/79095 (spurious stringop-overflow warning)
PR tree-optimization/79095
* tree-vrp.c (extract_range_from_binary_expr_1): For EXACT_DIV_EXPR,
if the numerator has the range ~[0,0] make the resultant range ~[0,0].
(extract_range_from_binary_expr): For MINUS_EXPR with no derived range,
if the operands are known to be not equal, then the resulting range
is ~[0,0].
(intersect_ranges): If the new range is ~[0,0] and the old range is
wide, then prefer ~[0,0].
* tree-vrp.c (overflow_comparison_p_1): New function.
(overflow_comparison_p): New function.
* tree-vrp.c (register_edge_assert_for_2): Register additional asserts
if NAME is used in an overflow test.
(vrp_evaluate_conditional_warnv_with_ops): If the ops represent an
overflow check that can be expressed as an equality test, then adjust
ops to be that equality test.
PR tree-optimization/79095
* g++.dg/pr79095-1.C: New test
* g++.dg/pr79095-2.C: New test
* g++.dg/pr79095-3.C: New test
* g++.dg/pr79095-4.C: New test
* g++.dg/pr79095-5.C: New test
* gcc.c-torture/execute/arith-1.c: Update with more cases.
* gcc.dg/tree-ssa/pr79095-1.c: New test.
From-SVN: r245434
Andreas Krebbel [Tue, 14 Feb 2017 15:38:02 +0000 (15:38 +0000)]
S/390: Cleanup: Remove builtin type flags.
With the target attribute stuff the only user of the builtin types
flags value has been removed. So drop that value from the builtin
types list entirely.
gcc/ChangeLog:
2017-02-14 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* config/s390/s390-builtin-types.def: Remove flags argument.
* config/s390/s390.c (s390_init_builtins): Likewise.
From-SVN: r245432
Martin Liska [Tue, 14 Feb 2017 14:56:11 +0000 (15:56 +0100)]
Fix memory leak in LTO
2017-02-14 Martin Liska <mliska@suse.cz>
* lto.c (do_stream_out): Free LTO file filename string.
From-SVN: r245431
Martin Liska [Tue, 14 Feb 2017 14:54:55 +0000 (15:54 +0100)]
Fix memory leak in tree-ssa-loop-unswitch.c
2017-02-14 Martin Liska <mliska@suse.cz>
* tree-ssa-loop-unswitch.c (hoist_guard): Release get_loop_body
vector. Fix trailing white spaces.
From-SVN: r245430
James Greenhalgh [Tue, 14 Feb 2017 14:48:33 +0000 (14:48 +0000)]
[Patch AArch64] Use 128-bit vectors when autovectorizing 16-bit float types
gcc/
* config/aarch64/aarch64.c (aarch64_simd_container_mode): Handle
HFmode.
gcc/testsuite/
* gcc.target/aarch64/vect_fp16_1.c: New.
From-SVN: r245429
Kyrylo Tkachov [Tue, 14 Feb 2017 10:33:50 +0000 (10:33 +0000)]
[ARM] PR rtl-optimization/68664 Implement TARGET_SCHED_CAN_SPECULATE_INSN hook
PR rtl-optimization/68664
* config/arm/arm.c (arm_sched_can_speculate_insn):
New function. Declare prototype.
(TARGET_SCHED_CAN_SPECULATE_INSN): Define.
From-SVN: r245425
Kyrylo Tkachov [Tue, 14 Feb 2017 10:31:14 +0000 (10:31 +0000)]
[AArch64] PR rtl-optimization/68664 Implement TARGET_SCHED_CAN_SPECULATE_INSN hook
PR rtl-optimization/68664
* config/aarch64/aarch64.c (aarch64_sched_can_speculate_insn):
New function.
(TARGET_SCHED_CAN_SPECULATE_INSN): Define.
From-SVN: r245424
Amit Pawar [Tue, 14 Feb 2017 09:27:06 +0000 (09:27 +0000)]
Fix alignemnt and max skip bytes for znver1 arch.
2017-02-14 Amit Pawar <amit.pawar@amd.com>
* config/i386/i386.c (znver1_cost): Fix the alignment for function and
max skip bytes for function, loop and jump.
From-SVN: r245423
Prathamesh Kulkarni [Tue, 14 Feb 2017 09:21:01 +0000 (09:21 +0000)]
gimple-pretty-print.c (dump_unary_rhs): Adjust dump format for ABS_EXPR for gimple dump.
2017-02-14 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* gimple-pretty-print.c (dump_unary_rhs): Adjust dump format for
ABS_EXPR for gimple dump.
c/
* gimpler-parser.c (c_parser_gimple_statement): Handle ABS_EXPR.
(c_parser_gimple_unary_expression): Likewise.
testsuite/
* gcc.dg/gimplefe-25.c: New test.
From-SVN: r245422
Jakub Jelinek [Tue, 14 Feb 2017 08:45:31 +0000 (09:45 +0100)]
re PR target/79462 (sh: Stack smashing detected when building __ashrdi3 in libgcc)
PR target/79462
* config/sh/sh.c (expand_cbranchdi4): Don't clear operands[4].
From-SVN: r245421
Jakub Jelinek [Tue, 14 Feb 2017 08:26:26 +0000 (09:26 +0100)]
re PR tree-optimization/79408 (Missed VRP optimization of integer modulo)
PR tree-optimization/79408
* tree-vrp.c (simplify_div_or_mod_using_ranges): Handle also the
case when on TRUNC_MOD_EXPR op0 is INTEGER_CST.
(simplify_stmt_using_ranges): Call simplify_div_or_mod_using_ranges
also if rhs1 is INTEGER_CST.
* gcc.dg/tree-ssa/pr79408-2.c: New test.
From-SVN: r245420
Richard Biener [Tue, 14 Feb 2017 07:58:12 +0000 (07:58 +0000)]
re PR tree-optimization/79432 (ICE: verify_ssa failed)
2017-02-14 Richard Biener <rguenther@suse.de>
PR middle-end/79432
* tree-into-ssa.c (insert_phi_nodes): When the function can
have abnormal edges rewrite SSA names with broken use-def
dominance out of SSA and register them for PHI insertion.
* gcc.dg/torture/pr79432.c: New testcase.
From-SVN: r245417
Martin Sebor [Tue, 14 Feb 2017 04:38:54 +0000 (04:38 +0000)]
PR middle-end/79496 - call to snprintf with zero size eliminated with -Wformat-truncation=2
gcc/ChangeLog:
PR middle-end/79496
* gimple-ssa-sprintf.c (pass_sprintf_length::handle_gimple_call): Avoid
clearing info.nowrite flag when snprintf size argument is a range.
gcc/testsuite/ChangeLog:
PR middle-end/79496
* gcc.dg/tree-ssa/builtin-snprintf-2.c: New test.
From-SVN: r245415
GCC Administrator [Tue, 14 Feb 2017 00:16:19 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r245414
Jakub Jelinek [Mon, 13 Feb 2017 23:09:09 +0000 (00:09 +0100)]
re PR sanitizer/79341 (Many Asan tests fail on s390)
PR sanitizer/79341
* c-c++-common/ubsan/float-cast-overflow-8.c (TEST): Make min and max
variables volatile.
From-SVN: r245411
Jason Merrill [Mon, 13 Feb 2017 22:31:12 +0000 (17:31 -0500)]
PR c++/79461 - ICE with lambda in constexpr constructor
* constexpr.c (build_data_member_initialization): Ignore
initialization of a local variable.
From-SVN: r245410
Jakub Jelinek [Mon, 13 Feb 2017 21:56:13 +0000 (22:56 +0100)]
cprop.c (cprop_jump): Add missing space in string literal.
* cprop.c (cprop_jump): Add missing space in string literal.
* tree-ssa-structalias.c (rewrite_constraints): Likewise.
(get_constraint_for_component_ref): Likewise.
* df-core.c (df_worklist_dataflow_doublequeue): Likewise.
* tree-outof-ssa.c (insert_partition_copy_on_edge): Likewise.
* lra-constraints.c (process_alt_operands): Likewise.
* ipa-inline.c (inline_small_functions): Likewise.
* tree-ssa-sccvn.c (visit_reference_op_store): Likewise.
* cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Likewise.
* trans-mem.c (diagnose_tm_1_op): Likewise.
* omp-grid.c (grid_find_single_omp_among_assignments): Likewise.
(grid_parallel_clauses_gridifiable): Likewise.
c/
* c-parser.c (c_parser_oacc_declare): Add missing space in
diagnostics.
fortran/
* trans-expr.c (gfc_conv_substring): Add missing space in diagnostics.
From-SVN: r245409
Jakub Jelinek [Mon, 13 Feb 2017 21:54:42 +0000 (22:54 +0100)]
mkoffload.c (process): Add space in between , and %d.
* config/nvptx/mkoffload.c (process): Add space in between
, and %d.
From-SVN: r245408
Jakub Jelinek [Mon, 13 Feb 2017 21:54:01 +0000 (22:54 +0100)]
init.c (warn_placement_new_too_small): Add missing space in diagnostics.
* init.c (warn_placement_new_too_small): Add missing space in
diagnostics.
* parser.c (cp_parser_oacc_declare): Likewise.
* mangle.c (maybe_check_abi_tags): Likewise.
From-SVN: r245407
Prathamesh Kulkarni [Mon, 13 Feb 2017 21:40:51 +0000 (21:40 +0000)]
re PR c/79478 (possible gimple error with gcc.dg/gimplefe-16.c)
2017-02-13 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
PR c/79478
* gimple-parser.c (c_parser_gimple_postfix_expression): Call
set_c_expr_source_range when parsing ssa-name.
From-SVN: r245406
Jakub Jelinek [Mon, 13 Feb 2017 19:59:28 +0000 (20:59 +0100)]
i386.h (REG_CLASS_NAMES): Add , in between "MOD4_SSE_REGS" and "ALL_REGS".
* config/i386/i386.h (REG_CLASS_NAMES): Add , in between
"MOD4_SSE_REGS" and "ALL_REGS".
From-SVN: r245405
Jakub Jelinek [Mon, 13 Feb 2017 19:55:01 +0000 (20:55 +0100)]
* spellcheck.c (test_data): Add , in between "foo" and "food".
From-SVN: r245404
Jakub Jelinek [Mon, 13 Feb 2017 19:31:14 +0000 (20:31 +0100)]
re PR c++/79232 (error: invalid rhs for gimple memory store)
PR c++/79232
* typeck.c (cp_build_modify_expr): Handle properly COMPOUND_EXPRs
on lhs that have {PRE{DEC,INC}REMENT,MODIFY,MIN,MAX,COND}_EXPR
in the rightmost operand.
* g++.dg/cpp1z/eval-order4.C: New test.
* g++.dg/other/pr79232.C: New test.
From-SVN: r245401
Joseph Myers [Mon, 13 Feb 2017 17:51:37 +0000 (17:51 +0000)]
* de.po, fr.po, sv.po: Update.
From-SVN: r245399
Nathan Sidwell [Mon, 13 Feb 2017 17:42:31 +0000 (17:42 +0000)]
PR c++/79296 - ICE mangling localized template instantiation
PR c++/79296 - ICE mangling localized template instantiation
* decl2.c (determine_visibility): Use template fn context for
local class instantiations.
PR c++/79296
* g++.dg/cpp0x/pr79296.C: New.
From-SVN: r245398
Ian Lance Taylor [Mon, 13 Feb 2017 17:37:02 +0000 (17:37 +0000)]
re PR go/79443 (libgo/math test fails on s390x (undefined symbols cosh, sinh, tanh, hasVX))
PR go/79443
libgo: fix some s390x tests
Add `+build ignore` to ignore tests that rely on s390x assembly code
not yet implemented for gccgo.
Fixes GCC PR 79443.
Reviewed-on: https://go-review.googlesource.com/36909
From-SVN: r245397
Segher Boessenkool [Mon, 13 Feb 2017 17:22:39 +0000 (18:22 +0100)]
rs6000: Fix gcc.dg/tree-ssa/ssa-dom-cse-2.c
The testcase should xfail when compiling for a 64-bit target, not when
the default target is 64-bit.
gcc/testsuite/
* gcc.dg/tree-ssa/ssa-dom-cse-2.c: Do not xfail powerpc64*-*-*.
Instead, xfail powerpc-*-*-* && lp64.
From-SVN: r245396
Segher Boessenkool [Mon, 13 Feb 2017 16:51:25 +0000 (17:51 +0100)]
rs6000: testsuite: Fix vec-adde[c]-int128.c
These are a runtime testcases so they should test p8vector_hw instead of
powerpc_p8vector_ok, or they will fail with an illegal instruction on
older processors.
Also they run on any PowerPC, not with just those compilers that were
configured to default to 64-bit targets.
gcc/testsuite/
* gcc.target/powerpc/vec-adde-int128.c: Use p8vector_hw instead of
powerpc_p8vector_ok.
* gcc.target/powerpc/vec-addec-int128.c: Ditto.
From-SVN: r245395
H.J. Lu [Mon, 13 Feb 2017 16:47:35 +0000 (16:47 +0000)]
x32: Update baseline_symbols.txt
PR libstdc++/79348
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
From-SVN: r245394
Aaron Sawdey [Mon, 13 Feb 2017 16:00:22 +0000 (16:00 +0000)]
re PR target/79449 (ppc builtin expansion of strncmp can cross page (4k) boundary where it should not)
2017-02-13 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
PR target/79449
* gcc.dg/strncmp-2.c: New. Test strncmp and memcmp builtin expansion
for reading beyond a 4k boundary.
2017-02-13 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
PR target/79449
* config/rs6000/rs6000.c (expand_block_compare): Make sure runtime
boundary crossing check and subsequent code generation agree.
From-SVN: r245392
Kyrylo Tkachov [Mon, 13 Feb 2017 15:54:50 +0000 (15:54 +0000)]
[AArch64] Use contains_mem_rtx_p to detect memory sub-rtxes
* config/aarch64/aarch64.c (has_memory_op): Delete.
(aarch64_madd_needs_nop): Use contains_mem_rtx_p instead of
has_memory_op.
From-SVN: r245391
Jakub Jelinek [Mon, 13 Feb 2017 15:39:59 +0000 (16:39 +0100)]
re PR rtl-optimization/79388 (wrong code with -O -fno-tree-coalesce-vars)
PR rtl-optimization/79388
PR rtl-optimization/79450
* combine.c (distribute_notes): When removing TEM_INSN for which
corresponding dest has last value recorded, invalidate that last
value.
* gcc.c-torture/execute/pr79388.c: New test.
* gcc.c-torture/execute/pr79450.c: New test.
From-SVN: r245390
Jakub Jelinek [Mon, 13 Feb 2017 15:38:33 +0000 (16:38 +0100)]
re PR libstdc++/79348 (abi_check fails on s390x (2 undesignated symbols))
PR libstdc++/79348
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt: Likewise.
* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
From-SVN: r245389
Kyrylo Tkachov [Mon, 13 Feb 2017 15:09:54 +0000 (15:09 +0000)]
[ARM] Fix assembly comment syntax in -mprint-tune-info
* config/arm/arm.c (arm_print_tune_info): Use ASM_COMMENT_START instead
of explicit '@'. Add missing assembly comment marker on branch costs
printout.
From-SVN: r245388
Nathan Sidwell [Mon, 13 Feb 2017 15:06:47 +0000 (15:06 +0000)]
* gengtype-lex.l (<in_struct>): Add '/'.
From-SVN: r245387
Jonathan Wakely [Mon, 13 Feb 2017 13:13:29 +0000 (13:13 +0000)]
PR libstdc++/79486 use lvalues in result_of expressions
PR libstdc++/79486
* include/std/future (__future_base::_Task_state::_M_run)
(__future_base::_Task_state::_M_run_delayed): Use lvalue types in
result_of expressions.
* testsuite/30_threads/packaged_task/79486.cc: New.
From-SVN: r245386
Martin Liska [Mon, 13 Feb 2017 13:13:21 +0000 (14:13 +0100)]
Replace XALLOCAVEC with XCNEWVEC (PR c/79471).
2017-02-13 Martin Liska <mliska@suse.cz>
PR c/79471
* calls.c (expand_call): Replace XALLOCAVEC with XCNEWVEC.
From-SVN: r245385
Richard Biener [Mon, 13 Feb 2017 08:54:02 +0000 (08:54 +0000)]
isl.m4: Remove support for ISL 0.14.
2017-02-13 Richard Biener <rguenther@suse.de>
config/
* isl.m4: Remove support for ISL 0.14.
* configure: Re-generate.
gcc/
* configure.ac (HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS):
Remove.
* configure: Re-generate.
* config.in: Likewise.
* graphite-dependences.c: Simplify as if
HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS was defined.
* graphite-isl-ast-to-gimple.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.h: Likewise.
* toplev.c: Include isl/version.h and use isl_version () for
printing the ISL version.
* doc/install.texi: Update ISL requirement.
From-SVN: r245382
GCC Administrator [Mon, 13 Feb 2017 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r245381
John Marino [Sun, 12 Feb 2017 21:34:46 +0000 (21:34 +0000)]
system-freebsd-x86.ads: Rename into...
* system-freebsd-x86.ads: Rename into...
* system-freebsd.ads: ...this.
(Default_Bit_Order): Define using Standard'Default_Bit_Order.
* gcc-interface/Makefile.in: Support aarch64-freebsd.
(x86-64/FreeBSD): Adjust to above renaming.
(i386/FreeBSD): Likewise.
From-SVN: r245377
Thomas Koenig [Sun, 12 Feb 2017 16:10:22 +0000 (16:10 +0000)]
re PR fortran/65542 (SPREAD intrinsic incorrectly accepted in initialization expressions with -std=f95)
2017-02-12 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/65542
* intrinsic.c (gfc_intrinsic_func_interface): Return an error
for -std=f95 for disallowed transformational functions in
initialization expressions.
2017-02-12 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/65542
* gfortran.dg/spread_init_expr_2.f90: New test case.
From-SVN: r245376
Gerald Pfeifer [Sun, 12 Feb 2017 14:37:46 +0000 (14:37 +0000)]
standards.texi (Standards): Update reference to Objective-C 2.0.
* doc/standards.texi (Standards): Update reference to
Objective-C 2.0.
From-SVN: r245375
Gerald Pfeifer [Sun, 12 Feb 2017 08:17:00 +0000 (08:17 +0000)]
extend.texi (Named Address Spaces): sourceware.org now defaults to https.
* doc/extend.texi (Named Address Spaces): sourceware.org now
defaults to https.
* doc/install.texi (Binaries): Ditto.
(Specific): Ditto.
From-SVN: r245374
Jason Merrill [Sun, 12 Feb 2017 03:31:02 +0000 (22:31 -0500)]
PR c++/77659 - ICE with new and C++14 aggregate NSDMI
* init.c (build_new): Make backups of any CONSTRUCTORs in init.
(build_new_1): Use replace_placeholders.
* tree.c (replace_placeholders_t): Also track whether we've seen a
placeholder.
(replace_placeholders, replace_placeholders_r): Adjust.
* cp-tree.h: Adjust.
From-SVN: r245372
Sandra Loosemore [Sun, 12 Feb 2017 00:57:21 +0000 (19:57 -0500)]
cpp.texi: Replace "stringify"/"stringification" with C standard terminology...
2017-02-11 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/cpp.texi: Replace "stringify"/"stringification" with C
standard terminology "stringize"/"stringizing" throughout.
* doc/cppinternals.texi: Likewise.
From-SVN: r245371
GCC Administrator [Sun, 12 Feb 2017 00:16:18 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r245370
Sandra Loosemore [Sat, 11 Feb 2017 23:08:11 +0000 (18:08 -0500)]
extend.texi: Fix some spelling mistakes and typos.
2017-02-11 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/extend.texi: Fix some spelling mistakes and typos.
* doc/invoke.texi: Likewise.
From-SVN: r245367
Jan Hubicka [Sat, 11 Feb 2017 21:49:51 +0000 (22:49 +0100)]
re PR tree-optimization/79224 (Large C-Ray slowdown)
PR ipa/79224
* params.def (inline-min-speedup) Change from 10 to 8.
From-SVN: r245366