platform/upstream/gcc.git
7 years agore PR fortran/80046 ([F03] Explicit interface required: pointer argument)
Janus Weil [Mon, 10 Apr 2017 20:28:23 +0000 (22:28 +0200)]
re PR fortran/80046 ([F03] Explicit interface required: pointer argument)

2017-04-10  Janus Weil  <janus@gcc.gnu.org>

PR fortran/80046
* expr.c (gfc_check_pointer_assign): Check if procedure pointer
components in a pointer assignment need an explicit interface.

2017-04-10  Janus Weil  <janus@gcc.gnu.org>

PR fortran/80046
* gfortran.dg/proc_ptr_comp_48.f90: New test case.

From-SVN: r246823

7 years ago* g++.dg/torture/pr79905.C: Add -maltivec option.
David Edelsohn [Mon, 10 Apr 2017 19:50:33 +0000 (19:50 +0000)]
* g++.dg/torture/pr79905.C: Add -maltivec option.

From-SVN: r246820

7 years agore PR tree-optimization/80374 (ICE in fold_convert_loc, at fold-const.c:2384)
Jeff Law [Mon, 10 Apr 2017 19:19:42 +0000 (13:19 -0600)]
re PR tree-optimization/80374 (ICE in fold_convert_loc, at fold-const.c:2384)

PR tree-optimization/80374
* tree-ssa-dom.c (derive_equivalences_from_bit_ior): Do not try to
record anything if we can not convert integer_zero_node to the
desired type.

PR tree-optimization/80374
* g++.dg/pr80374.c: New test.

From-SVN: r246819

7 years agore PR target/80108 (ICE in aggregate_value_p at function.c:2028)
Kelvin Nilsen [Mon, 10 Apr 2017 19:01:37 +0000 (19:01 +0000)]
re PR target/80108 (ICE in aggregate_value_p at function.c:2028)

gcc/ChangeLog:

2017-04-10  Kelvin Nilsen  <kelvin@gcc.gnu.org>

PR target/80108
* config/rs6000/rs6000.c (rs6000_option_override_internal):
Enhance special handling given to the TARGET_P9_MINMAX option in
relation to certain other options.

gcc/testsuite/ChangeLog:

2017-04-10  Kelvin Nilsen  <kelvin@gcc.gnu.org>

PR target/80108
* gcc.target/powerpc/ppc-fortran/ppc-fortran.exp: New file.
* gcc.target/powerpc/ppc-fortran/pr80108-1.f90: New test.

From-SVN: r246818

7 years agounroll-7.c: Declare "a" as a pointer to external array.
Uros Bizjak [Mon, 10 Apr 2017 18:58:34 +0000 (20:58 +0200)]
unroll-7.c: Declare "a" as a pointer to external array.

* gcc.dg/unroll-7.c: Declare "a" as a pointer to external array.

From-SVN: r246817

7 years agore PR testsuite/79356 (XPASS in attr-alloc_size-11.c)
Uros Bizjak [Mon, 10 Apr 2017 18:51:42 +0000 (20:51 +0200)]
re PR testsuite/79356 (XPASS in attr-alloc_size-11.c)

PR testsuite/79356
* gcc.dg/attr-alloc_size-11.c: Don't xfail on alpha.

From-SVN: r246816

7 years agore PR testsuite/79867 ([cygwin] LD_LIBRARY_PATH ignored, contaminating (nearly?)...
Daniel Santos [Mon, 10 Apr 2017 17:45:35 +0000 (17:45 +0000)]
re PR testsuite/79867 ([cygwin] LD_LIBRARY_PATH ignored, contaminating (nearly?) all test results)

2017-04-10  Daniel Santos <daniel.santos@pobox.com>

PR testsuite/79867
* lib/target-libpath.exp: Merge in cygwin fix from libffi.

From-SVN: r246813

7 years agore PR sanitizer/80348 (UBSAN: compile time crash in ubsan_instrument_division)
Marek Polacek [Mon, 10 Apr 2017 17:18:15 +0000 (17:18 +0000)]
re PR sanitizer/80348 (UBSAN: compile time crash in ubsan_instrument_division)

PR sanitizer/80348
* typeck.c (cp_build_binary_op): Use NULL_TREE instead of NULL.  Set
ORIG_TYPE earlier and not only when shortening.

* g++.dg/ubsan/div-by-zero-3.C: New test.

From-SVN: r246812

7 years agore PR tree-optimization/80153 (ivopt generate wrong code)
Bin Cheng [Mon, 10 Apr 2017 16:54:14 +0000 (16:54 +0000)]
re PR tree-optimization/80153 (ivopt generate wrong code)

PR tree-optimization/80153
* tree-ssa-loop-ivopts.c (add_iv_candidate_for_use): Check and
remove POINTER_PLUS_EXPR's base part directly, rather than through
aff_tree.

From-SVN: r246811

7 years agore PR tree-optimization/80153 (ivopt generate wrong code)
Bin Cheng [Mon, 10 Apr 2017 16:51:44 +0000 (16:51 +0000)]
re PR tree-optimization/80153 (ivopt generate wrong code)

PR tree-optimization/80153
* tree-affine.c (aff_combination_to_tree): Get base pointer from
the first element of pointer type aff_tree.  Build result expr in
aff_tree's type.
(add_elt_to_tree): Convert to type unconditionally.  Remove other
fold_convert calls.
* tree-ssa-loop-ivopts.c (alloc_iv): Pass in consistent types.
(rewrite_use_nonlinear_expr): Check invariant using iv information.
gcc/testsuite
PR tree-optimization/80153
* gcc.c-torture/execute/pr80153.c: New.

From-SVN: r246810

7 years agotree-ssa-structalias.c (find_func_aliases): Properly handle asm inputs.
Richard Biener [Mon, 10 Apr 2017 15:34:19 +0000 (15:34 +0000)]
tree-ssa-structalias.c (find_func_aliases): Properly handle asm inputs.

2017-04-10  Richard Biener  <rguenther@suse.de>

* tree-ssa-structalias.c (find_func_aliases): Properly handle
asm inputs.

From-SVN: r246809

7 years agore PR rtl-optimization/70478 ([LRA] S/390: Performance regression - superfluous stack...
Vladimir Makarov [Mon, 10 Apr 2017 14:58:33 +0000 (14:58 +0000)]
re PR rtl-optimization/70478 ([LRA] S/390: Performance regression - superfluous stack frame)

2017-04-10  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/70478
* lra-constraints.c (curr_small_class_check): New.
(update_and_check_small_class_inputs): New.
(process_alt_operands): Update curr_small_class_check.  Disfavor
alternative insn memory operands.  Check available regs for small
class operands.

From-SVN: r246808

7 years agoUpdate MIPS -mvirt option description
Matthew Fortune [Mon, 10 Apr 2017 13:44:39 +0000 (13:44 +0000)]
Update MIPS -mvirt option description

gcc/
PR target/80057
* config/mips/mips.opt (-mvirt): Update description.
* doc/invoke.texi (-mvirt): Likewise.

From-SVN: r246807

7 years agore PR middle-end/80362 (gcc miscompiles arithmetic with signed char)
Richard Biener [Mon, 10 Apr 2017 13:02:12 +0000 (13:02 +0000)]
re PR middle-end/80362 (gcc miscompiles arithmetic with signed char)

2017-04-10  Richard Biener  <rguenther@suse.de>

PR middle-end/80362
* fold-const.c (fold_binary_loc): Look at unstripped ops when
looking for NEGATE_EXPR in -A / -B to A / B folding.

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

From-SVN: r246805

7 years agoSupport multiple files w/ -i option in gcov (PR gcov-profile/80224).
Martin Liska [Mon, 10 Apr 2017 11:37:14 +0000 (13:37 +0200)]
Support multiple files w/ -i option in gcov (PR gcov-profile/80224).

2017-04-10  Martin Liska  <mliska@suse.cz>

PR gcov-profile/80224
* gcov.c (print_usage): Fix usage string.
(get_gcov_intermediate_filename): Remove.
(output_gcov_file): Use both for normal and intermediate format.
(generate_results): Do not initialize special file for
intermediate format.

From-SVN: r246804

7 years agore PR tree-optimization/80304 (Wrong result with do concurrent)
Richard Biener [Mon, 10 Apr 2017 11:27:05 +0000 (11:27 +0000)]
re PR tree-optimization/80304 (Wrong result with do concurrent)

2017-04-10  Richard Biener  <rguenther@suse.de>

PR tree-optimization/80304
* tree-ssa-loop-im.c (ref_indep_loop_p_1): Also recurse
for safelen.

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

From-SVN: r246803

7 years agore PR target/79905 (ICE in canonical types differ for identical types __vector(4...
Nathan Sidwell [Mon, 10 Apr 2017 11:25:44 +0000 (11:25 +0000)]
re PR target/79905 (ICE in canonical types differ for identical types __vector(4) int and V4i {aka __vector(4) int})

PR target/79905
* config/rs6000/rs6000.c (rs6000_vector_type): New.
(rs6000_init_builtins): Use it.

PR target/79905
* g++.dg/torture/pr79905.C: New.

From-SVN: r246802

7 years ago[ARM] Add source mode to coprocessor pattern SETs
Kyrylo Tkachov [Mon, 10 Apr 2017 11:21:55 +0000 (11:21 +0000)]
[ARM] Add source mode to coprocessor pattern SETs

* config/arm/arm.md (<mrc>): Add mode to SET source.
(<mrrc>): Likewise.

From-SVN: r246801

7 years agore PR tree-optimization/80344 (-Wuninitialized triggering on a ctor on ARM)
Richard Biener [Mon, 10 Apr 2017 08:58:02 +0000 (08:58 +0000)]
re PR tree-optimization/80344 (-Wuninitialized triggering on a ctor on ARM)

2017-04-10  Richard Biener  <rguenther@suse.de>

PR middle-end/80344
* gimplify.c (is_gimple_mem_rhs_or_call): Allow CLOBBERs.

From-SVN: r246800

7 years agoEvaluate a SAVE_EXPR before an UBSAN check (PR sanitizer/80350).
Martin Liska [Mon, 10 Apr 2017 07:29:29 +0000 (09:29 +0200)]
Evaluate a SAVE_EXPR before an UBSAN check (PR sanitizer/80350).

2017-04-10  Martin Liska  <mliska@suse.cz>

PR sanitizer/80350
* c-ubsan.c (ubsan_instrument_shift): Evaluate RHS before
doing an UBSAN check.
2017-04-10  Martin Liska  <mliska@suse.cz>

PR sanitizer/80350
* c-c++-common/ubsan/pr80350.c: New test.

From-SVN: r246799

7 years agore PR target/80324 (_mm512_reduce_xxx type instrinsics are missing)
Jakub Jelinek [Mon, 10 Apr 2017 06:53:28 +0000 (08:53 +0200)]
re PR target/80324 (_mm512_reduce_xxx type instrinsics are missing)

PR target/80324
* config/i386/avx512fintrin.h (_mm512_reduce_add_epi32,
_mm512_reduce_mul_epi32, _mm512_reduce_and_epi32,
_mm512_reduce_or_epi32, _mm512_mask_reduce_add_epi32,
_mm512_mask_reduce_mul_epi32, _mm512_mask_reduce_and_epi32,
_mm512_mask_reduce_or_epi32, _mm512_reduce_min_epi32,
_mm512_reduce_max_epi32, _mm512_reduce_min_epu32,
_mm512_reduce_max_epu32, _mm512_mask_reduce_min_epi32,
_mm512_mask_reduce_max_epi32, _mm512_mask_reduce_min_epu32,
_mm512_mask_reduce_max_epu32, _mm512_reduce_add_ps,
_mm512_reduce_mul_ps, _mm512_mask_reduce_add_ps,
_mm512_mask_reduce_mul_ps, _mm512_reduce_min_ps, _mm512_reduce_max_ps,
_mm512_mask_reduce_min_ps, _mm512_mask_reduce_max_ps,
_mm512_reduce_add_epi64, _mm512_reduce_mul_epi64,
_mm512_reduce_and_epi64, _mm512_reduce_or_epi64,
_mm512_mask_reduce_add_epi64, _mm512_mask_reduce_mul_epi64,
_mm512_mask_reduce_and_epi64, _mm512_mask_reduce_or_epi64,
_mm512_reduce_min_epi64, _mm512_reduce_max_epi64,
_mm512_mask_reduce_min_epi64, _mm512_mask_reduce_max_epi64,
_mm512_reduce_min_epu64, _mm512_reduce_max_epu64,
_mm512_mask_reduce_min_epu64, _mm512_mask_reduce_max_epu64,
_mm512_reduce_add_pd, _mm512_reduce_mul_pd, _mm512_mask_reduce_add_pd,
_mm512_mask_reduce_mul_pd, _mm512_reduce_min_pd, _mm512_reduce_max_pd,
_mm512_mask_reduce_min_pd, _mm512_mask_reduce_max_pd): New intrinsics.

* gcc.target/i386/avx512f-reduce-op-1.c: New test.

From-SVN: r246798

7 years agoDaily bump.
GCC Administrator [Mon, 10 Apr 2017 00:16:18 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r246797

7 years agoPR c++/80356 - ICE with reference to function template argument.
Jason Merrill [Sun, 9 Apr 2017 05:38:40 +0000 (01:38 -0400)]
PR c++/80356 - ICE with reference to function template argument.

PR c++/79294
* pt.c (convert_nontype_argument_function): Adjust type even with a
value-dependent argument.

From-SVN: r246794

7 years agoPR c++/80267 - ICE with nested capture of reference
Jason Merrill [Sun, 9 Apr 2017 05:06:08 +0000 (01:06 -0400)]
PR c++/80267 - ICE with nested capture of reference

PR c++/60992
* pt.c (tsubst_copy): Handle lookup finding a capture proxy.

From-SVN: r246793

7 years agoDaily bump.
GCC Administrator [Sun, 9 Apr 2017 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r246792

7 years agore PR rtl-optimization/70478 ([LRA] S/390: Performance regression - superfluous stack...
Vladimir Makarov [Sat, 8 Apr 2017 19:18:42 +0000 (19:18 +0000)]
re PR rtl-optimization/70478 ([LRA] S/390: Performance regression - superfluous stack frame)

2017-04-08  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/70478
* lra-constraints.c: Reverse the last patch.

From-SVN: r246789

7 years agoaarch64-freebsd.h: Define MCOUNT_NAME.
Andreas Tobler [Sat, 8 Apr 2017 18:58:22 +0000 (20:58 +0200)]
aarch64-freebsd.h: Define MCOUNT_NAME.

2017-04-08  Andreas Tobler  <andreast@gcc.gnu.org>

    * config/aarch64/aarch64-freebsd.h: Define MCOUNT_NAME.
    Add comment for WCHAR_T.

From-SVN: r246786

7 years agoRevert r246759.
Martin Liska [Sat, 8 Apr 2017 17:09:58 +0000 (19:09 +0200)]
Revert r246759.

From-SVN: r246785

7 years agore PR rtl-optimization/80358 (ICE (cc1 killed) building glib with -O3 on powerpc64le...
Aaron Sawdey [Sat, 8 Apr 2017 16:10:26 +0000 (16:10 +0000)]
re PR rtl-optimization/80358 (ICE (cc1 killed) building glib with -O3 on powerpc64le-linux-gnu)

2017-04-08  Aaron Sawdey  <acsawdey@linux.vnet.ibm.com>

PR target/80358
* config/rs6000/rs6000.c (expand_block_compare): Fix boundary check.

From-SVN: r246784

7 years agoDaily bump.
GCC Administrator [Sat, 8 Apr 2017 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r246783

7 years agors6000.c (vec_load_pendulum): Rename...
Pat Haugen [Fri, 7 Apr 2017 19:35:44 +0000 (19:35 +0000)]
rs6000.c (vec_load_pendulum): Rename...

* rs6000/rs6000.c (vec_load_pendulum): Rename...
(vec_pairing): ...to this.
(power9_sched_reorder2): Rewrite code for pairing vector/vecload insns.
(rs6000_sched_init): Adjust for name change.
(struct rs6000_sched_context): Likewise.
(rs6000_init_sched_context): Likewise.
(rs6000_set_sched_context): Likewise.

From-SVN: r246776

7 years agoavx512f-vgetmantps-2.c: Add -mfpmath=sse to dg-options.
Jakub Jelinek [Fri, 7 Apr 2017 19:23:24 +0000 (21:23 +0200)]
avx512f-vgetmantps-2.c: Add -mfpmath=sse to dg-options.

* gcc.target/i386/avx512f-vgetmantps-2.c: Add -mfpmath=sse to
dg-options.
* gcc.target/i386/avx512f-vgetmantpd-2.c: Likewise.

From-SVN: r246775

7 years agore PR target/80322 (convert intrinsics missing)
Jakub Jelinek [Fri, 7 Apr 2017 19:22:00 +0000 (21:22 +0200)]
re PR target/80322 (convert intrinsics missing)

PR target/80322
PR target/80323
PR target/80325
PR target/80326
* config/i386/avxintrin.h (_mm256_cvtsd_f64, _mm256_cvtss_f32): New
intrinsics.
* config/i386/avx512fintrin.h (_mm512_int2mask, _mm512_mask2int,
_mm512_abs_ps, _mm512_mask_abs_ps, _mm512_abs_pd, _mm512_mask_abs_pd,
_mm512_cvtsd_f64, _mm512_cvtss_f32): Likewise.

* gcc.target/i386/avx512f-undefined-1.c: New test.
* gcc.target/i386/avx512f-cvtsd-1.c: New test.
* gcc.target/i386/avx-cvtsd-1.c: New test.
* gcc.target/i386/avx512f-cvtss-1.c: New test.
* gcc.target/i386/avx512f-abspd-1.c: New test.
* gcc.target/i386/avx-cvtss-1.c: New test.
* gcc.target/i386/avx512f-absps-1.c: New test.
* gcc.target/i386/avx512f-int2mask-1.c: New test.
* gcc.target/i386/avx512f-mask2int-1.c: New test.

From-SVN: r246774

7 years agoaarch64-freebsd.h: Define WCHAR_TYPE.
Andreas Tobler [Fri, 7 Apr 2017 18:50:11 +0000 (20:50 +0200)]
aarch64-freebsd.h: Define WCHAR_TYPE.

2017-04-07  Andreas Tobler  <andreast@gcc.gnu.org>

    * config/aarch64/aarch64-freebsd.h: Define WCHAR_TYPE.

From-SVN: r246773

7 years agore PR c++/80095 (ICE with this pointer in NSDMI)
Marek Polacek [Fri, 7 Apr 2017 18:09:55 +0000 (18:09 +0000)]
re PR c++/80095 (ICE with this pointer in NSDMI)

PR c++/80095
* call.c (build_over_call): Don't check cxx_dialect.
* cp-gimplify.c (cp_gimplify_init_expr): Don't check cxx_dialect nor
whether SUB is a CONSTRUCTOR.
* init.c (build_new_1): Don't check cxx_dialect.
* tree.c (replace_placeholders): Add a function comment.  Return if
not in C++14, or if the object isn't a (member of a) class.
* typeck2.c (store_init_value): Don't check cxx_dialect nor whether
TYPE is CLASS_TYPE_P.

* g++.dg/cpp1y/nsdmi-aggr8.C: New test.

From-SVN: r246772

7 years agore PR sanitizer/80348 (UBSAN: compile time crash in ubsan_instrument_division)
Marek Polacek [Fri, 7 Apr 2017 17:51:55 +0000 (17:51 +0000)]
re PR sanitizer/80348 (UBSAN: compile time crash in ubsan_instrument_division)

PR sanitizer/80348
* typeck.c (cp_build_binary_op): Convert COP[01] to ORIG_TYPE.

* g++.dg/ubsan/div-by-zero-2.C: New test.

From-SVN: r246770

7 years agoMakefile.in: Swap definition of LIBGCC_LINKS and inclusion of target makefile fragment.
Jeff Law [Fri, 7 Apr 2017 16:11:57 +0000 (10:11 -0600)]
Makefile.in: Swap definition of LIBGCC_LINKS and inclusion of target makefile fragment.

* Makefile.in: Swap definition of LIBGCC_LINKS and inclusion of
target makefile fragment.
* config/sh/t-sh (unwind-dw2-Os-4-200.o): Depend on LIBGCC_LINKS.

From-SVN: r246766

7 years agore PR rtl-optimization/70703 (Regression in register usage on x86)
Vladimir Makarov [Fri, 7 Apr 2017 16:06:28 +0000 (16:06 +0000)]
re PR rtl-optimization/70703 (Regression in register usage on x86)

2017-04-07  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/70703
* ira-color.c (update_conflict_hard_regno_costs): Use
int64_t instead of HOST_WIDE_INT.

From-SVN: r246765

7 years agore PR rtl-optimization/70478 ([LRA] S/390: Performance regression - superfluous stack...
Vladimir Makarov [Fri, 7 Apr 2017 16:01:50 +0000 (16:01 +0000)]
re PR rtl-optimization/70478 ([LRA] S/390: Performance regression - superfluous stack frame)

2017-04-07  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/70478
* lra-constraints.c (process_alt_operands): Disfavor alternative
insn memory operands.

2017-04-07  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/70478
* gcc.target/s390/pr70478.c: New.

From-SVN: r246764

7 years agoiq2000.c (final_prescan_insn): Do not separate a CALL and NOTE_INSN_CALL_ARG_LOCATION.
Jeff Law [Fri, 7 Apr 2017 14:26:05 +0000 (08:26 -0600)]
iq2000.c (final_prescan_insn): Do not separate a CALL and NOTE_INSN_CALL_ARG_LOCATION.

* config/iq2000/iq2000.c (final_prescan_insn): Do not separate a
CALL and NOTE_INSN_CALL_ARG_LOCATION.

From-SVN: r246761

7 years agoError message on target attribute on aarch64 target (PR target/79889).
Martin Liska [Fri, 7 Apr 2017 11:20:01 +0000 (13:20 +0200)]
Error message on target attribute on aarch64 target (PR target/79889).

2017-04-07  Martin Liska  <mliska@suse.cz>

PR target/79889
* g++.dg/ext/mv8.C: Add aarch64* targets.
2017-04-07  Martin Liska  <mliska@suse.cz>

PR target/79889
* config/aarch64/aarch64.c (aarch64_process_target_attr):
Show error message instead of an ICE.

From-SVN: r246760

7 years agoAdd function part to a same comdat group (PR ipa/80212).
Martin Liska [Fri, 7 Apr 2017 10:36:21 +0000 (12:36 +0200)]
Add function part to a same comdat group (PR ipa/80212).

2017-04-07  Martin Liska  <mliska@suse.cz>

PR ipa/80212
* g++.dg/ipa/pr80212.C: New test.
2017-04-07  Martin Liska  <mliska@suse.cz>

PR ipa/80212
* ipa-split.c (split_function): Add function part to a same comdat
group.

From-SVN: r246759

7 years ago[testsuite] Require c99_runtime for pr79800.c
Thomas Preud'homme [Fri, 7 Apr 2017 09:44:33 +0000 (09:44 +0000)]
[testsuite] Require c99_runtime for pr79800.c

2017-04-07  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/testsuite/
    * gcc.dg/tree-ssa/pr79800.c: Require c99_runtime.

From-SVN: r246758

7 years agore PR tree-optimization/80334 (Segfault when taking address of copy of unaligned...
Richard Biener [Fri, 7 Apr 2017 08:47:43 +0000 (08:47 +0000)]
re PR tree-optimization/80334 (Segfault when taking address of copy of unaligned struct)

2017-04-07  Richard Biener  <rguenther@suse.de>

PR tree-optimization/80334
* g++.dg/torture/pr80334.C: Use __BIGGEST_ALIGNMENT__ for
alignas on stack.

From-SVN: r246757

7 years agore PR middle-end/80341 (gcc miscompiles division of signed char)
Richard Biener [Fri, 7 Apr 2017 08:20:24 +0000 (08:20 +0000)]
re PR middle-end/80341 (gcc miscompiles division of signed char)

2017-04-07  Richard Biener  <rguenther@suse.de>

PR middle-end/80341
* tree.c (get_unwidened): Also handle ! for_type case for
INTEGER_CSTs.
* convert.c (do_narrow): Split out from ...
(convert_to_integer_1): ... here.  Do not pass final truncation
type to get_unwidened for TRUNC_DIV_EXPR.

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

From-SVN: r246756

7 years agotree-affine.c (wide_int_ext_for_comb): Take type rather than aff_tree.
Richard Biener [Fri, 7 Apr 2017 08:04:32 +0000 (08:04 +0000)]
tree-affine.c (wide_int_ext_for_comb): Take type rather than aff_tree.

2017-04-07  Richard Biener  <rguenther@suse.de>

* tree-affine.c (wide_int_ext_for_comb): Take type rather
than aff_tree.
(aff_combination_const): Adjust.
(aff_combination_scale): Likewise.
(aff_combination_add_elt): Likewise.
(aff_combination_add_cst): Likewise.
(aff_combination_convert): Likewise.
(add_elt_to_tree): Likewise.  Remove unused argument.
(aff_combination_to_tree): Adjust calls to add_elt_to_tree.

From-SVN: r246755

7 years agoARM: Introduce ARM_DEFAULT_SHORT_ENUMS
Sebastian Huber [Fri, 7 Apr 2017 07:02:07 +0000 (07:02 +0000)]
ARM: Introduce ARM_DEFAULT_SHORT_ENUMS

Allow targets to define the default for the short enums option.

gcc/

* config/arm/arm.h (ARM_DEFAULT_SHORT_ENUMS): Provide default
definition.
* config/arm/arm.c (arm_default_short_enums): Use
ARM_DEFAULT_SHORT_ENUMS.
* config/arm/rtems.h (ARM_DEFAULT_SHORT_ENUMS): Define.

From-SVN: r246753

7 years ago[RS6000] Out-of-line register save functions can't be used from crtend.o
Alan Modra [Fri, 7 Apr 2017 01:30:43 +0000 (11:00 +0930)]
[RS6000] Out-of-line register save functions can't be used from crtend.o

PR target/45053
* config/rs6000/t-crtstuff (CRTSTUFF_T_CFLAGS): Add -O2.

From-SVN: r246749

7 years agoDaily bump.
GCC Administrator [Fri, 7 Apr 2017 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r246748

7 years agore PR debug/80234 (ICE in splice_child_die at dwarfout.c:5265)
Jakub Jelinek [Thu, 6 Apr 2017 20:46:29 +0000 (22:46 +0200)]
re PR debug/80234 (ICE in splice_child_die at dwarfout.c:5265)

PR debug/80234
* dwarf2out.c (gen_member_die): Handle C++17 inline static data
members with redundant out-of-class redeclaration.

* g++.dg/debug/dwarf2/pr80234-1.C: New test.
* g++.dg/debug/dwarf2/pr80234-2.C: New test.

From-SVN: r246743

7 years agore PR target/80286 (AVX2 _mm_cvtsi128_si32 doesn't return a proper 32bits int)
Uros Bizjak [Thu, 6 Apr 2017 19:22:02 +0000 (21:22 +0200)]
re PR target/80286 (AVX2 _mm_cvtsi128_si32 doesn't return a proper 32bits int)

PR target/80286
* config/i386/sse.md (*vec_extractv4si_0_zext_sse4): New pattern.
* config/i386/i386.md (*zero_extendsidi2):
Add (?*x,*x) and (?*v,*v) alternatives.

From-SVN: r246741

7 years agore PR target/79733 (ICE in int_mode_for_mode, at stor-layout.c:406)
Uros Bizjak [Thu, 6 Apr 2017 18:49:43 +0000 (20:49 +0200)]
re PR target/79733 (ICE in int_mode_for_mode, at stor-layout.c:406)

PR target/79733
* config/i386/i386.c (ix86_expand_builtin)
<case IX86_BUILTIN_K{,OR}TEST{C,Z}{8,16,32,64}>: Determine insn operand
mode from insn data. Convert operands to insn operand mode.
Copy operands that don't satisfy insn predicate to a register.

testsuite/ChangeLog:

PR target/79733
* gcc.target/i386/pr79733.c: New test.

From-SVN: r246739

7 years agore PR target/80298 (<x86intrin.h> incompatible with -mno-sse)
Uros Bizjak [Thu, 6 Apr 2017 18:34:18 +0000 (20:34 +0200)]
re PR target/80298 (<x86intrin.h> incompatible with -mno-sse)

PR target/80298
* gcc.target/i386/pr80298-1.c: New test.
* gcc.target/i386/pr80298-2.c: Ditto.

From-SVN: r246737

7 years agox-aix: Increase memory limit for genautomata on AIX.
Sam Thursfield [Thu, 6 Apr 2017 16:56:49 +0000 (16:56 +0000)]
x-aix: Increase memory limit for genautomata on AIX.

2017-04-06  Sam Thursfield  <sam.thursfield@codethink.co.uk>

* config/rs6000/x-aix: Increase memory limit for genautomata on AIX.
Update comments.

From-SVN: r246735

7 years ago[ARM] Compile atomic_loaddi_11 for Cortex-R5
Thomas Preud'homme [Thu, 6 Apr 2017 14:53:22 +0000 (14:53 +0000)]
[ARM] Compile atomic_loaddi_11 for Cortex-R5

2017-04-06  Thomas Preud'homme  <thomas.preudhomme@arm.com

    gcc/testsuite/
    PR target/80082
    * gcc.target/arm/atomic_loaddi_11.c: Target Cortex-R5 instead of
    ARMv7-R.

From-SVN: r246733

7 years agore PR tree-optimization/80334 (Segfault when taking address of copy of unaligned...
Richard Biener [Thu, 6 Apr 2017 13:56:35 +0000 (13:56 +0000)]
re PR tree-optimization/80334 (Segfault when taking address of copy of unaligned struct)

2017-04-06  Richard Biener  <rguenther@suse.de>

PR tree-optimization/80334
* tree-ssa-loop-ivopts.c (rewrite_use_address): Properly
preserve alignment of accesses.

* g++.dg/torture/pr80334.C: New testcase.

From-SVN: r246731

7 years agoCherry-pick upstream r299036 from libsanitizer (PR sanitizer/80166).
Martin Liska [Thu, 6 Apr 2017 13:42:24 +0000 (15:42 +0200)]
Cherry-pick upstream r299036 from libsanitizer (PR sanitizer/80166).

2017-04-06  Martin Liska  <mliska@suse.cz>

PR sanitizer/80166
* sanitizer_common/sanitizer_common_interceptors.inc (INTERCEPTOR):
Cherry-pick upstream r299036.
2017-04-06  Martin Liska  <mliska@suse.cz>

PR sanitizer/80166
* gcc.dg/asan/pr80166.c: New test.

From-SVN: r246730

7 years agoFix gcc.target/i386/pr79390.c for Solaris as
Rainer Orth [Thu, 6 Apr 2017 13:11:21 +0000 (13:11 +0000)]
Fix gcc.target/i386/pr79390.c for Solaris as

PR tree-optimization/79390
* gcc.target/i386/pr79390.c: Allow for cmovl.a.

From-SVN: r246729

7 years agore PR middle-end/80262 (address space gets lost in memory access)
Richard Biener [Thu, 6 Apr 2017 12:31:05 +0000 (12:31 +0000)]
re PR middle-end/80262 (address space gets lost in memory access)

2017-04-06  Richard Biener  <rguenther@suse.de>

PR tree-optimization/80262
* tree-sra.c (build_ref_for_offset): Preserve address-space
information.
* tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address):
Drop useless address-space information on MEM_REF offsets.

* gcc.target/i386/pr80262.c: New testcase.

From-SVN: r246728

7 years agore PR tree-optimization/80281 (Wrong constant folding)
Richard Biener [Thu, 6 Apr 2017 11:25:35 +0000 (11:25 +0000)]
re PR tree-optimization/80281 (Wrong constant folding)

2017-04-06  Richard Biener  <rguenther@suse.de>

PR middle-end/80281
* gcc.dg/tree-ssa/pr40921.c: Add -fp-contract=off.

From-SVN: r246726

7 years agoDaily bump.
GCC Administrator [Thu, 6 Apr 2017 00:16:16 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r246724

7 years ago* builtins.def (BUILT_IN_UPDATE_SETJMP_BUF): Fix type.
Andreas Schwab [Wed, 5 Apr 2017 19:29:26 +0000 (19:29 +0000)]
* builtins.def (BUILT_IN_UPDATE_SETJMP_BUF): Fix type.

From-SVN: r246720

7 years agore PR c++/80309 (ICE: canonical types differ for identical types _Args2 and _Args2)
Jakub Jelinek [Wed, 5 Apr 2017 19:10:17 +0000 (21:10 +0200)]
re PR c++/80309 (ICE: canonical types differ for identical types _Args2 and _Args2)

PR c++/80309
* pt.c (canonical_type_parameter): Use vec_safe_grow_cleared instead
of a loop doing vec_safe_push of NULL.  Formatting fixes.
(rewrite_template_parm): Copy TEMPLATE_PARM_PARAMETER_PACK from oldidx
to newidx before calling canonical_type_parameter on newtype.

From-SVN: r246717

7 years ago* gcc.pot: Regenerate.
Joseph Myers [Wed, 5 Apr 2017 17:53:55 +0000 (18:53 +0100)]
* gcc.pot: Regenerate.

From-SVN: r246713

7 years ago* de.po, es.po, fr.po: Update.
Joseph Myers [Wed, 5 Apr 2017 17:47:40 +0000 (18:47 +0100)]
* de.po, es.po, fr.po: Update.

From-SVN: r246712

7 years agore PR rtl-optimization/70703 (Regression in register usage on x86)
Vladimir Makarov [Wed, 5 Apr 2017 16:14:28 +0000 (16:14 +0000)]
re PR rtl-optimization/70703 (Regression in register usage on x86)

2017-04-05  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/70703
* ira-color.c (update_conflict_hard_regno_costs): Use
HOST_WIDE_INT instead of long.

From-SVN: r246711

7 years agore PR target/80298 (<x86intrin.h> incompatible with -mno-sse)
Uros Bizjak [Wed, 5 Apr 2017 15:33:49 +0000 (17:33 +0200)]
re PR target/80298 (<x86intrin.h> incompatible with -mno-sse)

PR target/80298
* config/i386/mmintrin.h: Add -msse target option when __SSE__ is
not defined for x86_64 target.  Add -mmmx target option when __SSE2__
is not defined.
* config/i386/mm3dnow.h: Add -msse target when __SSE__ is not defined
for x86_64 target.  Handle -m3dnowa option.

From-SVN: r246708

7 years agore PR rtl-optimization/70703 (Regression in register usage on x86)
Vladimir Makarov [Wed, 5 Apr 2017 15:07:51 +0000 (15:07 +0000)]
re PR rtl-optimization/70703 (Regression in register usage on x86)

2017-04-05  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/70703
* ira-color.c (update_costs_from_allocno): Use the smallest mode.
(update_conflict_hard_regno_costs): Use long instead of unsigned
arithmetic for cost calculation.

2017-04-05  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/70703
* gcc.target/i386/pr70703.c: New.

From-SVN: r246707

7 years agore PR sanitizer/80308 (asan crash on big-endian powerpc-linux target)
Jakub Jelinek [Wed, 5 Apr 2017 13:17:15 +0000 (15:17 +0200)]
re PR sanitizer/80308 (asan crash on big-endian powerpc-linux target)

PR sanitizer/80308
* asan.c (asan_store_shadow_bytes): Fix location of last_chunk_value
for big endian.

* c-c++-common/asan/pr80308.c: New test.

Co-Authored-By: Bernd Edlinger <bernd.edlinger@hotmail.de>
From-SVN: r246703

7 years agore PR target/78002 (gcc.target/aarch64/stack-checking.c ICEs with -mabi=ilp32)
Eric Botcazou [Wed, 5 Apr 2017 11:48:02 +0000 (11:48 +0000)]
re PR target/78002 (gcc.target/aarch64/stack-checking.c ICEs with -mabi=ilp32)

PR target/78002
* config/aarch64/aarch64.c (aarch64_emit_probe_stack_range): Replace
ptr_mode with Pmode throughout.
* config/aarch64/aarch64.md (probe_stack_range_<PTR:mode): Rename
into probe_stack_range and use DImode.

From-SVN: r246702

7 years agoPR target/79890: S/390: Fix crash.
Dominik Vogt [Wed, 5 Apr 2017 08:28:18 +0000 (08:28 +0000)]
PR target/79890: S/390: Fix crash.

builtin_eh_return requires the return address to be saved on the
stack.  The patch prevents using an FPR for that.

gcc/ChangeLog:

2017-04-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>

PR target/79890
* config/s390/s390.c (s390_register_info_gprtofpr): Return if
call_eh_return is true.

gcc/testsuite/ChangeLog:

2017-04-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>

PR target/79890
* gcc.target/s390/pr79890.c: New test case.

From-SVN: r246701

7 years agoS/390: Initialize variable to avoid warning
Andreas Krebbel [Wed, 5 Apr 2017 08:24:34 +0000 (08:24 +0000)]
S/390: Initialize variable to avoid warning

gcc/ChangeLog:

2017-04-05  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390-c.c (s390_resolve_overloaded_builtin):
Initialize last_match_fntype_index.

From-SVN: r246700

7 years agore PR target/80310 (Bogus -Wpsabi warning with -fsanitize=signed-integer-overflow)
Jakub Jelinek [Wed, 5 Apr 2017 05:25:18 +0000 (07:25 +0200)]
re PR target/80310 (Bogus -Wpsabi warning with -fsanitize=signed-integer-overflow)

PR target/80310
* tree-nvr.c: Include internal-fn.h.
(pass_return_slot::execute): Ignore internal calls without
direct optab.

* c-c++-common/ubsan/pr80310.c: New test.

From-SVN: r246699

7 years agoDaily bump.
GCC Administrator [Wed, 5 Apr 2017 00:16:16 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r246698

7 years agore PR go/80302 (FAIL: time on systems with tzdata2017b installed)
Ian Lance Taylor [Tue, 4 Apr 2017 19:37:22 +0000 (19:37 +0000)]
re PR go/80302 (FAIL: time on systems with tzdata2017b installed)

PR go/80302
    time: make the ParseInLocation test more robust

    This is a backport of https://golang.org/cl/37964 from the gc toolchain.

    Original description:

        The tzdata 2017a update (2017-02-28) changed the abbreviation of the
        Asia/Baghdad time zone (used in TestParseInLocation) from 'AST' to the
        numeric '+03'.

        Update the test so that it skips the checks if we're using a recent
        tzdata release.

    Updates golang/go#19457
    Fixes GCC PR 80302.

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

From-SVN: r246695

7 years agore PR c++/80297 (Compiler time crash: type mismatch in binary expression)
Jakub Jelinek [Tue, 4 Apr 2017 19:14:47 +0000 (21:14 +0200)]
re PR c++/80297 (Compiler time crash: type mismatch in binary expression)

PR c++/80297
* genmatch.c (capture::gen_transform): For GENERIC unshare_expr
captures used multiple times, except for the last use.
* generic-match-head.c: Include gimplify.h.

* g++.dg/torture/pr80297.C: New test.

Co-Authored-By: Richard Biener <rguenther@suse.de>
From-SVN: r246693

7 years agore PR tree-optimization/79390 (10% performance drop in SciMark2 LU after r242550)
Jakub Jelinek [Tue, 4 Apr 2017 17:52:27 +0000 (19:52 +0200)]
re PR tree-optimization/79390 (10% performance drop in SciMark2 LU after r242550)

PR tree-optimization/79390
* target.h (struct noce_if_info): Declare.
* targhooks.h (default_noce_conversion_profitable_p): Declare.
* target.def (noce_conversion_profitable_p): New target hook.
* ifcvt.h (struct noce_if_info): New type, moved from ...
* ifcvt.c (struct noce_if_info): ... here.
(noce_conversion_profitable_p): Renamed to ...
(default_noce_conversion_profitable_p): ... this.  No longer
static nor inline.
(noce_try_store_flag_constants, noce_try_addcc,
noce_try_store_flag_mask, noce_try_cmove, noce_try_cmove_arith,
noce_convert_multiple_sets): Use targetm.noce_conversion_profitable_p
instead of noce_conversion_profitable_p.
* config/i386/i386.c: Include ifcvt.h.
(ix86_option_override_internal): Don't override
PARAM_MAX_RTL_IF_CONVERSION_INSNS default.
(ix86_noce_conversion_profitable_p): New function.
(TARGET_NOCE_CONVERSION_PROFITABLE_P): Redefine.
* config/i386/x86-tune.def (X86_TUNE_ONE_IF_CONV_INSN): Adjust comment.
* doc/tm.texi.in (TARGET_NOCE_CONVERSION_PROFITABLE_P): Add.
* doc/tm.texi: Regenerated.

* gcc.target/i386/pr79390.c: New test.
* gcc.dg/ifcvt-4.c: Use -mtune-ctrl=^one_if_conv_insn for i?86/x86_64.

From-SVN: r246686

7 years agoextend.texi (PowerPC AltiVec Built-in Functions): Grammar correction.
Bill Schmidt [Tue, 4 Apr 2017 16:31:58 +0000 (16:31 +0000)]
extend.texi (PowerPC AltiVec Built-in Functions): Grammar correction.

2017-04-04  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* doc/extend.texi (PowerPC AltiVec Built-in Functions): Grammar
correction.

From-SVN: r246684

7 years agore PR c++/80296 (Broken diagnostic 'unary_plus_expr' not supported by expression)
Volker Reichelt [Tue, 4 Apr 2017 16:30:44 +0000 (16:30 +0000)]
re PR c++/80296 (Broken diagnostic 'unary_plus_expr' not supported by expression)

        PR c++/80296
        * cxx-pretty-print.c (cxx_pretty_printer::expression): Add
        UNARY_PLUS_EXPR case.

        * g++.dg/cpp0x/alias-decl-80296.C: New test.

From-SVN: r246683

7 years ago[ARM] Fix small multiply feature
Thomas Preud'homme [Tue, 4 Apr 2017 16:24:18 +0000 (16:24 +0000)]
[ARM] Fix small multiply feature

2017-04-03  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR target/80307
    * config/arm/arm.c (thumb1_rtx_costs): Give a cost of 32
    instructions for small multiply cores.

    gcc/testsuite/
    PR target/80307
    * gcc.target/arm/small-multiply-m0-1.c: Do not skip test if not
    targeting any CPU or architecture.
    * gcc.target/arm/small-multiply-m0-2.c: Likewise.
    * gcc.target/arm/small-multiply-m0-3.c: Likewise.
    * gcc.target/arm/small-multiply-m0plus-1.c: Likewise.
    * gcc.target/arm/small-multiply-m0plus-2.c: Likewise.
    * gcc.target/arm/small-multiply-m0plus-3.c: Likewise.
    * gcc.target/arm/small-multiply-m1-1.c: Likewise.
    * gcc.target/arm/small-multiply-m1-2.c: Likewise.
    * gcc.target/arm/small-multiply-m1-3.c: Likewise.

From-SVN: r246682

7 years agomips.c (mips_multi_add): Zero initialize the newly added member.
Jeff Law [Tue, 4 Apr 2017 15:30:30 +0000 (09:30 -0600)]
mips.c (mips_multi_add): Zero initialize the newly added member.

* config/mips/mips.c (mips_multi_add): Zero initialize the newly
added member.
(mips_expand_vec_perm_const): Initialize elements in orig_perm
that are not set by the loop over the elements.

From-SVN: r246681

7 years ago* semantics.c (finish_template_type): Check CLASSTYPE_TEMPLATE_INFO.
Jason Merrill [Tue, 4 Apr 2017 15:25:21 +0000 (11:25 -0400)]
* semantics.c (finish_template_type): Check CLASSTYPE_TEMPLATE_INFO.

From-SVN: r246680

7 years ago[multiple changes]
Nicolas Koenig [Tue, 4 Apr 2017 13:41:41 +0000 (15:41 +0200)]
[multiple changes]

2017-03-18  Nicolas Koenig  <koenigni@student.ethz.ch>
PR fortran/69498
* symbol.c (gfc_delete_symtree): If there is a period in the name, ignore
everything before it.

2017-03-18  Nicolas Koenig  <koenigni@student.ethz.ch>
PR fortran/69498
* gfortran.dg/submodule_unexp.f90: New test.

From-SVN: r246679

7 years ago[Ada][S/390] Fix Memory_Size definition.
Andreas Krebbel [Tue, 4 Apr 2017 11:45:37 +0000 (11:45 +0000)]
[Ada][S/390] Fix Memory_Size definition.

-m31 -mzarch uses 64 as word size instead of 32.  This must not affect
the Address type definition which is based on Memory_Size.

gcc/ada/ChangeLog:

2017-04-04  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* system-linux-s390.ads: Use Long_Integer'Size to define
Memory_Size.

From-SVN: r246678

7 years ago* ansidecl.h (ATTRIBUTE_PACKED): Fix typo in comment.
Jonathan Wakely [Tue, 4 Apr 2017 11:19:47 +0000 (12:19 +0100)]
* ansidecl.h (ATTRIBUTE_PACKED): Fix typo in comment.

From-SVN: r246677

7 years agore PR target/80286 (AVX2 _mm_cvtsi128_si32 doesn't return a proper 32bits int)
Jakub Jelinek [Tue, 4 Apr 2017 10:45:55 +0000 (12:45 +0200)]
re PR target/80286 (AVX2 _mm_cvtsi128_si32 doesn't return a proper 32bits int)

PR target/80286
* config/i386/i386.c (ix86_expand_args_builtin): If op has scalar
int mode, convert_modes it to mode as unsigned, otherwise use
lowpart_subreg to mode rather than SImode.
* config/i386/sse.md (<mask_codefor>ashr<mode>3<mask_name>,
ashr<mode>3, ashr<mode>3<mask_name>, <shift_insn><mode>3<mask_name>):
Use DImode instead of SImode for the shift count operand.
* config/i386/mmx.md (mmx_ashr<mode>3, mmx_<shift_insn><mode>3):
Likewise.
testsuite/
* gcc.target/i386/avx-pr80286.c: New test.
* gcc.dg/pr80286.c: New test.

From-SVN: r246676

7 years agore PR libgomp/79876 (FAIL: libgomp.fortran/strassen.f90 -O execution test on x86_6...
Jakub Jelinek [Tue, 4 Apr 2017 10:41:33 +0000 (12:41 +0200)]
re PR libgomp/79876 (FAIL: libgomp.fortran/strassen.f90   -O  execution test on x86_64-apple-darwin16)

PR libgomp/79876
* config/posix/thread-stacksize.h: New file.
* config/darwin/thread-stacksize.h: New file.
* config/nvptx/thread-stacksize.h: New file.
* env.c: Include thread-stacksize.h.
(initialize_env): Initialize stacksize to GOMP_DEFAULT_STACKSIZE
instead of 0.  Call pthread_attr_setstacksize even if
GOMP_DEFAULT_STACKSIZE is non-zero.

From-SVN: r246675

7 years agore PR tree-optimization/80281 (Wrong constant folding)
Richard Biener [Tue, 4 Apr 2017 09:06:04 +0000 (09:06 +0000)]
re PR tree-optimization/80281 (Wrong constant folding)

2017-04-04  Richard Biener  <rguenther@suse.de>

PR middle-end/80281
* match.pd (A + (-B) -> A - B): Make sure to preserve unsigned
arithmetic done for the negate or the plus.  Simplify.
(A - (-B) -> A + B): Likewise.
* fold-const.c (split_tree): Make sure to not negate pointers.

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

From-SVN: r246674

7 years agore PR tree-optimization/80275 (Poor (but valid) code generated by optimizer passing...
Richard Biener [Tue, 4 Apr 2017 06:58:45 +0000 (06:58 +0000)]
re PR tree-optimization/80275 (Poor (but valid) code generated by optimizer passing optimizer list to function)

2017-04-04  Richard Biener  <rguenther@suse.de>

PR tree-optimization/80275
* g++.dg/opt/pr80275.C: Make g static.

From-SVN: r246671

7 years ago* sem_ch3.adb (Build_Derived_Record_Type): Fix long line.
Eric Botcazou [Tue, 4 Apr 2017 06:33:33 +0000 (06:33 +0000)]
* sem_ch3.adb (Build_Derived_Record_Type): Fix long line.

From-SVN: r246670

7 years agoDaily bump.
GCC Administrator [Tue, 4 Apr 2017 00:16:20 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r246669

7 years agosimplify-rtx: Fix compare of comparisons (PR60818)
Segher Boessenkool [Tue, 4 Apr 2017 00:10:02 +0000 (02:10 +0200)]
simplify-rtx: Fix compare of comparisons (PR60818)

The function simplify_binary_operation_1 has code that does
/* Convert (compare (gt (flags) 0) (lt (flags) 0)) to (flags).  */
but this transformation is only valid if "flags" has the same machine
mode as the outer compare.  This fixes it.

PR rtl-optimization/60818
* simplify-rtx.c (simplify_binary_operation_1): Do not replace
a compare of comparisons with the thing compared if this results
in a different machine mode.

gcc/testsuite/
PR rtl-optimization/60818
* gcc.c-torture/compile/pr60818.c: New testcase.

From-SVN: r246666

7 years agoFix numerous typos in comments
Jonathan Wakely [Mon, 3 Apr 2017 22:30:56 +0000 (23:30 +0100)]
Fix numerous typos in comments

gcc:

* alias.c (base_alias_check): Fix typo in comment.
* cgraph.h (class ipa_polymorphic_call_context): Likewise.
* cgraphunit.c (symbol_table::compile): Likewise.
* collect2.c (maybe_run_lto_and_relink): Likewise.
* config/arm/arm.c (arm_thumb1_mi_thunk): Likewise.
* config/avr/avr-arch.h (avr_arch_info_t): Likewise.
* config/avr/avr.c (avr_map_op_t): Likewise.
* config/cr16/cr16.h (DATA_ALIGNMENT): Likewise.
* config/epiphany/epiphany.c (TARGET_ARG_PARTIAL_BYTES): Likewise.
* config/epiphany/epiphany.md (movcc): Likewise.
* config/i386/i386.c (legitimize_pe_coff_extern_decl): Likewise.
* config/m68k/m68k.c (struct _sched_ib, m68k_sched_variable_issue):
Likewise.
* config/mips/mips.c (mips_save_restore_reg): Likewise.
* config/rx/rx.c (rx_is_restricted_memory_address): Likewise.
* config/s390/s390.c (Z10_EARLYLOAD_DISTANCE): Likewise.
* config/sh/sh.c (sh_rtx_costs): Likewise.
* fold-const.c (fold_truth_andor): Likewise.
* genautomata.c (collapse_flag): Likewise.
* gengtype.h (struct type::u::s): Likewise.
* gensupport.c (has_subst_attribute, add_mnemonic_string): Likewise.
* input.c (FORMAT_AMOUNT): Likewise.
* ipa-cp.c (class ipcp_lattice, agg_replacements_to_vector)
(known_aggs_to_agg_replacement_list): Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-inline.h (estimate_edge_time, estimate_edge_hints): Likewise.
* ipa-polymorphic-call.c
(ipa_polymorphic_call_context::restrict_to_inner_class): Likewise.
* loop-unroll.c (analyze_insn_to_expand_var): Likewise.
* lra.c (lra_optional_reload_pseudos, lra_subreg_reload_pseudos):
Likewise.
* modulo-sched.c (apply_reg_moves): Likewise.
* omp-expand.c (build_omp_regions_1): Likewise.
* trans-mem.c (struct tm_wrapper_hasher): Likewise.
* tree-ssa-loop-ivopts.c (may_eliminate_iv): Likewise.
* tree-ssa-loop-niter.c (maybe_lower_iteration_bound): Likewise.
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Likewise.
* value-prof.c: Likewise.
* var-tracking.c (val_reset): Likewise.

gcc/ada:

* doc/gnat_ugn/gnat_and_program_execution.rst: Fix typo.
* g-socket.adb (To_Host_Entry): Fix typo in comment.
* gnat_ugn.texi: Fix typo.
* raise.c (_gnat_builtin_longjmp): Fix capitalization in comment.
* s-stposu.adb (Allocate_Any_Controlled): Fix typo in comment.
* sem_ch3.adb (Build_Derived_Record_Type): Likewise.
* sem_util.adb (Mark_Coextensions): Likewise.
* sem_util.ads (Available_Full_View_Of_Component): Likewise.

gcc/c:

* c-array-notation.c: Fix typo in comment.

gcc/c-family:

* c-warn.c (do_warn_double_promotion): Fix typo in comment.

gcc/cp:

        * class.c (update_vtable_entry_for_fn): Fix typo in comment.
* decl2.c (one_static_initialization_or_destruction): Likewise.
* name-lookup.c (store_bindings): Likewise.
* parser.c (make_call_declarator): Likewise.
* pt.c (check_explicit_specialization): Likewise.

gcc/testsuite:

* g++.old-deja/g++.benjamin/scope02.C: Fix typo in comment.
* gcc.dg/20031012-1.c: Likewise.
* gcc.dg/ipa/ipcp-1.c: Likewise.
* gcc.dg/torture/matrix-3.c: Likewise.
* gcc.target/powerpc/ppc-spe.c: Likewise.
* gcc.target/rx/zero-width-bitfield.c: Likewise.

libcpp:

* include/line-map.h (LINEMAPS_MACRO_MAPS): Fix typo in comment.
* lex.c (search_line_fast): Likewise.
* pch.h (cpp_valid_state): Likewise.

libdecnumber:

* decCommon.c (decFloatFromPackedChecked): Fix typo in comment.
* decNumber.c (decNumberPower, decMultiplyOp): Likewise.

libgcc:

* config/c6x/pr-support.c (__gnu_unwind_execute): Fix typo in comment.

libitm:

* libitm_i.h (sutrct gtm_thread): Fix typo in comment.

From-SVN: r246664

7 years agoPR sanitizer/79993 - ICE with VLA initialization from string
Jason Merrill [Mon, 3 Apr 2017 21:15:36 +0000 (17:15 -0400)]
PR sanitizer/79993 - ICE with VLA initialization from string

PR c++/69487 - wrong VLA initialization from string
* init.c (finish_length_check): Split out from build_vec_init.
(build_vec_init): Handle STRING_CST.
* typeck2.c (split_nonconstant_init): Handle STRING_CST.
(digest_init_r): Don't give a STRING_CST VLA type.

From-SVN: r246662

7 years agoRemove duplicated entry in C++17 library status table
Jonathan Wakely [Mon, 3 Apr 2017 18:58:32 +0000 (19:58 +0100)]
Remove duplicated entry in C++17 library status table

* doc/xml/manual/status_cxx2017.xml: Remove duplicate table entry.
* doc/html/*: Regenerate.

From-SVN: r246661

7 years agoUncomment std::reference_wrapper tests that no longer fail
Jonathan Wakely [Mon, 3 Apr 2017 17:16:11 +0000 (18:16 +0100)]
Uncomment std::reference_wrapper tests that no longer fail

* testsuite/20_util/reference_wrapper/invoke.cc: Uncomment tests
that no longer fail.

From-SVN: r246658

7 years agoFix comments in libstdc++ header and test
Jonathan Wakely [Mon, 3 Apr 2017 17:16:06 +0000 (18:16 +0100)]
Fix comments in libstdc++ header and test

* include/bits/ios_base.h: Correct comment.
* testsuite/util/testsuite_hooks.h: Likewise.

From-SVN: r246657

7 years agoUpdate C++17 library status table in manual
Jonathan Wakely [Mon, 3 Apr 2017 17:16:01 +0000 (18:16 +0100)]
Update C++17 library status table in manual

* doc/xml/manual/status_cxx2017.xml: Update C++17 status table.
* doc/xml/manual/appendix_contributing.xml (contrib.organization): Add
directories for debug, parallel and profile headers.
* doc/html/*: Regenerate.

From-SVN: r246656

7 years agoImplement P0426R1 "Constexpr for std::char_traits" for C++17 (partial)
Jonathan Wakely [Mon, 3 Apr 2017 17:15:53 +0000 (18:15 +0100)]
Implement P0426R1 "Constexpr for std::char_traits" for C++17 (partial)

* include/bits/char_traits.h (__gnu_cxx::char_traits): Add
_GLIBCXX14_CONSTEXPR on assign, compare, find, and length.
(std::char_traits<char>, std::char_traits<wchar_t>): Add
_GLIBCXX17_CONSTEXPR on assign.
(std::char_traits<char16_t>, std::char_traits<char32_t>): Add
_GLIBCXX17_CONSTEXPR on assign, compare, find, and length.
* testsuite/21_strings/char_traits/requirements/
constexpr_functions_c++17.cc: New test.

From-SVN: r246655

7 years agore PR target/80246 (Builtin's for POWER's dxex[q] and diex[q] use the wrong types)
Peter Bergner [Mon, 3 Apr 2017 17:10:57 +0000 (12:10 -0500)]
re PR target/80246 (Builtin's for POWER's dxex[q] and diex[q] use the wrong types)

PR target/80246
* gcc.target/powerpc/dfp-builtin-1.c: Require hard_dfp, not
powerpc_vsx_ok.
(std, ld): Limit scan-assembler-times check to lp64.
(stwu, stw, lwz): Add scan-assembler-times check for ilp32.
* gcc.target/powerpc/dfp-builtin-2.c: Require hard_dfp, not
powerpc_vsx_ok.

From-SVN: r246654