gcc.git
7 years agosse.md (vector modes -> vec_extract* splitter): Use explicit subreg RTX with operand 1.
Uros Bizjak [Mon, 6 Feb 2017 19:46:51 +0000 (20:46 +0100)]
sse.md (vector modes -> vec_extract* splitter): Use explicit subreg RTX with operand 1.

* config/i386/sse.md (vector modes -> vec_extract* splitter): Use
explicit subreg RTX with operand 1.  Use VECTOR_MODE_P predicate
to simplify split condition.

From-SVN: r245217

7 years agoomp-expand.c (oxpand_omp_atomic_fetch_op, [...]): Return false if can_atomic_load_p...
Jakub Jelinek [Mon, 6 Feb 2017 19:25:02 +0000 (20:25 +0100)]
omp-expand.c (oxpand_omp_atomic_fetch_op, [...]): Return false if can_atomic_load_p is false.

* omp-expand.c (oxpand_omp_atomic_fetch_op,
expand_omp_atomic_pipeline): Return false if can_atomic_load_p is
false.

From-SVN: r245216

7 years agosched: Do not move expensive insns speculatively (PR68664)
Segher Boessenkool [Mon, 6 Feb 2017 19:19:49 +0000 (20:19 +0100)]
sched: Do not move expensive insns speculatively (PR68664)

Scheduling should never move very expensive instructions to places they
are executed more frequently.  This patch fixes that, reducing the
execution time of c-ray by over 40% (I tested on a BE Power7 system).

This introduces a new target hook sched.can_speculate_insn which returns
whether the scheduler is allowed to speculate a given instruction.  The
rs6000 implementation disallows all divide and square root instructions.

PR rtl-optimization/68664
* target.def (can_speculate_insn): New hook.
* doc/tm.texi.in (TARGET_SCHED_CAN_SPECULATE_INSN): New hook.
* doc/tm.texi: Regenerate.
* sched-rgn.c (can_schedule_ready_p): Use the new hook.
* config/rs6000/rs6000.c (TARGET_SCHED_CAN_SPECULATE_INSN): New macro.
(rs6000_sched_can_speculate_insn): New function.

From-SVN: r245215

7 years agore PR tree-optimization/79284 (ICE on valid code at -O3 on x86_64-linux-gnu: verify_g...
Jakub Jelinek [Mon, 6 Feb 2017 19:15:36 +0000 (20:15 +0100)]
re PR tree-optimization/79284 (ICE on valid code at -O3 on x86_64-linux-gnu: verify_gimple failed)

PR tree-optimization/79284
* tree-vectorizer.h (VECT_SCALAR_BOOLEAN_TYPE_P): Define.
* tree-vect-stmts.c (vect_get_vec_def_for_operand,
vectorizable_mask_load_store, vectorizable_operation,
vect_is_simple_cond, get_same_sized_vectype): Use it instead
of comparing TREE_CODE of a type against BOOLEAN_TYPE.
* tree-vect-patterns.c (check_bool_pattern, search_type_for_mask_1,
vect_recog_bool_pattern, vect_recog_mask_conversion_pattern): Likewise.
* tree-vect-slp.c (vect_get_constant_vectors): Likewise.
* tree-vect-loop.c (vect_determine_vectorization_factor): Likewise.
Remove redundant gimple_code (stmt) == GIMPLE_ASSIGN test after
is_gimple_assign (stmt).  Replace another such test with
is_gimple_assign (stmt).
testsuite/
* gcc.c-torture/compile/pr79284.c: New test.

From-SVN: r245214

7 years agore PR c++/70448 (ICE on invalid code on x86_64-linux-gnu: unexpected expression ...
Paolo Carlini [Mon, 6 Feb 2017 17:49:31 +0000 (17:49 +0000)]
re PR c++/70448 (ICE on invalid code on x86_64-linux-gnu: unexpected expression ‘f’ of kind overload)

2017-02-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/70448
* g++.dg/cpp0x/pr70448.C: New.

From-SVN: r245213

7 years agoFix test failure at -O0 by pruning output
Jonathan Wakely [Mon, 6 Feb 2017 16:39:56 +0000 (16:39 +0000)]
Fix test failure at -O0 by pruning output

PR libstdc++/79323
* testsuite/20_util/duration/literals/range.cc: Prune extra output
at -O0.

From-SVN: r245211

7 years agoPR 78348: Limit amount of unrolling in test.
Dominik Vogt [Mon, 6 Feb 2017 15:14:09 +0000 (15:14 +0000)]
PR 78348: Limit amount of unrolling in test.

gcc/testsuite/ChangeLog:

2017-02-06  Dominik Vogt  <vogt@linux.vnet.ibm.com>

PR 78348
* gcc.dg/tree-ssa/ldist-24.c: Add "--param max-completely-peel-times=8"
to dg-options.

From-SVN: r245210

7 years agore PR rtl-optimization/78883 ([avr] ICE triggered by change to combine.c (r243578))
Georg-Johann Lay [Mon, 6 Feb 2017 13:38:56 +0000 (13:38 +0000)]
re PR rtl-optimization/78883 ([avr] ICE triggered by change to combine.c (r243578))

gcc/
PR target/78883
* config/avr/avr.c (rtl-iter.h): Include it.
(TARGET_LEGITIMATE_COMBINED_INSN): New hook define...
(avr_legitimate_combined_insn): ...and implementation.
gcc/testsuite/
PR target/78883
* gcc.c-torture/compile/pr78883.c: New test.

From-SVN: r245209

7 years agoS/390: Use macros from hwint.h where possible.
Dominik Vogt [Mon, 6 Feb 2017 11:42:07 +0000 (11:42 +0000)]
S/390: Use macros from hwint.h where possible.

gcc/ChangeLog:

2017-02-06  Dominik Vogt  <vogt@linux.vnet.ibm.com>

* config/s390/predicates.md ("larl_operand"): Use macros from hwint.h.
* config/s390/s390.c (s390_const_operand_ok)
(s390_canonicalize_comparison, s390_extract_part)
(s390_single_part, s390_contiguous_bitmask_nowrap_p)
(s390_contiguous_bitmask_p, s390_rtx_costs)
(legitimize_pic_address): Likewise.
* config/s390/s390.md ("clzdi2", "clztidi2"): Likewise.
* config/s390/vx-builtins.md ("vec_genbytemaskv16qi")
("vec_permi<mode>", "vfae<mode>", "*vfaes<mode>", "vstrc<mode>")
("*vstrcs<mode>"): Use UINTVAL() to set unsigned HOST_WIDE_INT.
* config/s390/vector.md ("vec_vfenes<mode>"): Likewise.

From-SVN: r245207

7 years agoavr.md (*addhi3_zero_extend): Add alternative where REGNO($0) == REGNO($1).
Georg-Johann Lay [Mon, 6 Feb 2017 11:38:52 +0000 (11:38 +0000)]
avr.md (*addhi3_zero_extend): Add alternative where REGNO($0) == REGNO($1).

* config/avr/avr.md (*addhi3_zero_extend): Add alternative where
REGNO($0) == REGNO($1).

From-SVN: r245206

7 years agodocumentation_hacking.xml: Remove obsolete link to DocBook Publishing Tools.
Gerald Pfeifer [Mon, 6 Feb 2017 10:26:59 +0000 (10:26 +0000)]
documentation_hacking.xml: Remove obsolete link to DocBook Publishing Tools.

* doc/xml/manual/documentation_hacking.xml: Remove obsolete link
to DocBook Publishing Tools.
epubcheck has moved to GitHub.
Update URL of the DocBook Element Reference; use that term as
link description instead of "online".

From-SVN: r245205

7 years agoS/390: Add SIZE_TYPE comment.
Andreas Krebbel [Mon, 6 Feb 2017 10:25:05 +0000 (10:25 +0000)]
S/390: Add SIZE_TYPE comment.

gcc/ChangeLog:

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

* config/s390/linux.h(SIZE_TYPE): Add comment.

From-SVN: r245204

7 years agoaarch64-cores.def: Change the scheduler to Thunderx2t99.
Julian Brown [Mon, 6 Feb 2017 02:23:07 +0000 (02:23 +0000)]
aarch64-cores.def: Change the scheduler to Thunderx2t99.

2017-02-06  Julian Brown  <julian@codesourcery.com>
    Naveen H.S  <Naveen.Hurugalawadi@cavium.com>
    Virendra Pathak  <virendra.pathak@broadcom.com>

* config/aarch64/aarch64-cores.def: Change the scheduler
to Thunderx2t99.
* config/aarch64/aarch64.md: Include thunderx2t99.md.
* config/aarch64/thunderx2t99.md: New file.

Co-Authored-By: Naveen H.S <Naveen.Hurugalawadi@cavium.com>
Co-Authored-By: Virendra Pathak <virendra.pathak@broadcom.com>
From-SVN: r245203

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

From-SVN: r245202

7 years agostandards.texi (Go Language): Update link to language standard.
Gerald Pfeifer [Sun, 5 Feb 2017 21:10:29 +0000 (21:10 +0000)]
standards.texi (Go Language): Update link to language standard.

* doc/standards.texi (Go Language): Update link to language
standard.

From-SVN: r245199

7 years agocontrib.texi (Contributors): Refer to Hans Boehm's garbage collector only in textual...
Gerald Pfeifer [Sun, 5 Feb 2017 21:05:26 +0000 (21:05 +0000)]
contrib.texi (Contributors): Refer to Hans Boehm's garbage collector only in textual form.

* doc/contrib.texi (Contributors): Refer to Hans Boehm's
garbage collector only in textual form.

From-SVN: r245198

7 years agotree-eh.c (lower_resx): Sanitize profile.
Jan Hubicka [Sun, 5 Feb 2017 18:13:22 +0000 (19:13 +0100)]
tree-eh.c (lower_resx): Sanitize profile.

* tree-eh.c (lower_resx): Sanitize profile.
(cleanup_empty_eh_move_lp): Likewise.

From-SVN: r245197

7 years agore PR tree-optimization/79347 (vect_do_peeling is messing up profile)
Jan Hubicka [Sun, 5 Feb 2017 17:16:52 +0000 (18:16 +0100)]
re PR tree-optimization/79347 (vect_do_peeling is messing up profile)

PR tree-ssa/79347
* cfgloopmanip.c (lv_adjust_loop_entry_edge, loop_version): Add
ELSE_PROB.
* cfgloopmanip.h (loop_version): Update prototype.
* modulo-sched.c (sms_schedule): Update call of loop_version.
* tree-if-conv.c(version_loop_for_if_conversion): Likewise.
* tree-parloops.c (gen_parallel_loop): Likewise.
* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Likewise.
* tree-ssa-loop-split.c (split_loop): Likewise.
* tree-ssa-loop-unswitch.c (tree_unswitch_loop): Likewise.
* tree-vect-loop-manip.c (vect_loop_versioning): Likewise.

* gcc.dg/tree-ssa/ifc-10.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-11.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-12.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-20040816-1.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-20040816-2.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-5.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-8.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-9.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-cd.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-pr56541.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-pr68583.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-pr69489-1.c: Match for profile mismatches.
* gcc.dg/tree-ssa/ifc-pr69489-2.c: Match for profile mismatches.

From-SVN: r245196

7 years agore PR bootstrap/78985 (profiledbootstrap failure by -Wuninitialized)
Martin Liska [Sun, 5 Feb 2017 15:51:13 +0000 (16:51 +0100)]
re PR bootstrap/78985 (profiledbootstrap failure by -Wuninitialized)

PR bootstrap/78985
* config/s390/s390.c (s390_gimplify_va_arg): Initialize local
variable to NULL.
(print_operand_address): Initialize a struct to zero.

From-SVN: r245195

7 years agore PR fortran/79344 (segmentation faults and run-time errors)
Andre Vehreschild [Sun, 5 Feb 2017 15:43:03 +0000 (16:43 +0100)]
re PR fortran/79344 (segmentation faults and run-time errors)

gcc/fortran/ChangeLog:

2017-02-05  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/79344
* trans-stmt.c (gfc_trans_allocate): Only deallocate the components of
the temporary, when a new object was created for the temporary.  Not
when it is just an alias to an existing object.

gcc/testsuite/ChangeLog:

2017-02-04  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/79344
* gfortran.dg/allocate_with_source_24.f90: New test.

From-SVN: r245194

7 years agore PR fortran/79335 (Conditional jump or move depends on uninitialised in value ...
Andre Vehreschild [Sun, 5 Feb 2017 13:05:10 +0000 (14:05 +0100)]
re PR fortran/79335 (Conditional jump or move depends on uninitialised in value  get_scalar_to_descriptor_type(tree_node*, symbol_attribute) (trans-expr.c:53))

gcc/fortran/ChangeLog:

2017-02-05  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/79335
* trans-decl.c (generate_coarray_sym_init): Retrieve the symbol's
attributes before using them.

From-SVN: r245193

7 years agore PR fortran/78958 (Unallocated memory access after SOURCE-ALLOCATEing unlimited...
Andre Vehreschild [Sun, 5 Feb 2017 12:42:31 +0000 (13:42 +0100)]
re PR fortran/78958 (Unallocated memory access after SOURCE-ALLOCATEing unlimited polymorphic object)

gcc/fortran/ChangeLog:

2017-02-05  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/78958
* trans-stmt.c (gfc_trans_allocate): Add the multiplying the _len
component of unlimited polymorphic objects when source-allocating.

From-SVN: r245192

7 years agore PR fortran/79230 ([OOP] Run time error: double free or corruption)
Andre Vehreschild [Sun, 5 Feb 2017 12:02:15 +0000 (13:02 +0100)]
re PR fortran/79230 ([OOP] Run time error: double free or corruption)

gcc/fortran/ChangeLog:

2017-02-05  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/79230
* trans-array.c (structure_alloc_comps): Ignore pointer components when
freeing structures.

gcc/testsuite/ChangeLog:

2017-02-05  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/79230
* gfortran.dg/der_ptr_component_2.f90: New test.

From-SVN: r245191

7 years agoMAINTAINERS (Write After Approval): Remove redundant entry for Andrew Burgess.
Gerald Pfeifer [Sun, 5 Feb 2017 11:28:08 +0000 (11:28 +0000)]
MAINTAINERS (Write After Approval): Remove redundant entry for Andrew Burgess.

* MAINTAINERS (Write After Approval): Remove redundant entry
for Andrew Burgess.

From-SVN: r245190

7 years agoextend.texi (x86 specific memory model extensions for transactional memory): Simplify...
Gerald Pfeifer [Sun, 5 Feb 2017 11:09:18 +0000 (11:09 +0000)]
extend.texi (x86 specific memory model extensions for transactional memory): Simplify a phrase.

* doc/extend.texi (x86 specific memory model extensions for
transactional memory): Simplify a phrase.

From-SVN: r245189

7 years agore PR target/79353 (ICE in curr_insn_transform, at lra-constraints.c:3773)
Eric Botcazou [Sun, 5 Feb 2017 09:47:48 +0000 (09:47 +0000)]
re PR target/79353 (ICE in curr_insn_transform, at lra-constraints.c:3773)

PR target/79353
* config/sparc/sync.md (atomic_loaddi_1): Replace 'U' constraint with
'r', 'm' constraint with 'T' and !TARGET_ARCH64 with TARGET_ARCH32.
(atomic_storedi_1): Likewise.

From-SVN: r245188

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

From-SVN: r245187

7 years agore PR tree-optimization/79338 (Memory leak in tree-parloops.c)
Jakub Jelinek [Sat, 4 Feb 2017 07:44:13 +0000 (08:44 +0100)]
re PR tree-optimization/79338 (Memory leak in tree-parloops.c)

PR tree-optimization/79338
* tree-parloops.c (gather_scalar_reductions): Don't call
vect_analyze_loop_form for loop->inner before destroying loop's
loop_vinfo.

From-SVN: r245183

7 years agocoarray_43.f90: Add "-latomic" option if libatomic_available.
John David Anglin [Sat, 4 Feb 2017 01:37:12 +0000 (01:37 +0000)]
coarray_43.f90: Add "-latomic" option if libatomic_available.

* gfortran.dg/coarray_43.f90: Add "-latomic" option if
libatomic_available.

From-SVN: r245182

7 years agopr77587.c: Require alias support.
John David Anglin [Sat, 4 Feb 2017 01:28:56 +0000 (01:28 +0000)]
pr77587.c: Require alias support.

* gcc.dg/pr77587.c: Require alias support.
* gcc.dg/pr77587a.c: Likewise.

From-SVN: r245181

7 years agopr78112-2.C: Skip on hppa*-*-hpux*.
John David Anglin [Sat, 4 Feb 2017 01:16:54 +0000 (01:16 +0000)]
pr78112-2.C: Skip on hppa*-*-hpux*.

* g++.dg/pr78112-2.C: Skip on hppa*-*-hpux*.
* gcc.c-torture/execute/pr78622.c: Likewise.

From-SVN: r245180

7 years agoWunused-var-15.c: Add -fno-common additional option on hppa*-*-hpux*.
John David Anglin [Sat, 4 Feb 2017 00:54:06 +0000 (00:54 +0000)]
Wunused-var-15.c: Add -fno-common additional option on hppa*-*-hpux*.

* c-c++-common/Wunused-var-15.c: Add -fno-common additional option on
hppa*-*-hpux*.
* c-c++-common/Wunused-var-16.c: Likewise.
* c-c++-common/builtin-shuffle-1.c: Likewise.
* gcc.dg/debug/dwarf2/align-[1-6].c Likewise.
* gcc.dg/debug/dwarf2/align-as-1.c: Likewise.

From-SVN: r245179

7 years agoconfigure.ac: Add gcc/function-tests.o to compare_exclusions for 32-bit hppa*-*-hpux*.
John David Anglin [Sat, 4 Feb 2017 00:25:19 +0000 (00:25 +0000)]
configure.ac: Add gcc/function-tests.o to compare_exclusions for 32-bit hppa*-*-hpux*.

        * configure.ac: Add gcc/function-tests.o to compare_exclusions for
32-bit hppa*-*-hpux*.
        * configure: Regenerate.

From-SVN: r245178

7 years agoDaily bump.
GCC Administrator [Sat, 4 Feb 2017 00:16:21 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r245177

7 years agore PR c++/78334 ([C++1z] P0127R2 related ICE: Segmentation fault)
Jason Merrill [Fri, 3 Feb 2017 23:19:46 +0000 (18:19 -0500)]
re PR c++/78334 ([C++1z] P0127R2 related ICE: Segmentation fault)

PR c++/78334

* g++.dg/cpp1z/nontype-auto7.C: New.

From-SVN: r245174

7 years agoPR tree-optimization/79327 - wrong code at -O2 and -fprintf-return-value
Martin Sebor [Fri, 3 Feb 2017 22:47:35 +0000 (22:47 +0000)]
PR tree-optimization/79327 - wrong code at -O2 and -fprintf-return-value

PR tree-optimization/79327 - wrong code at -O2 and -fprintf-return-value
gcc/ChangeLog:
* gimple-ssa-sprintf.c (tree_digits): Avoid adding the base prefix
when precision has resulted in leading zeros.
(format_integer): Adjust the likely counter to assume an unknown
argument that may be zero is non-zero.

gcc/testsuite/ChangeLog:
* gcc.dg/tree-ssa/builtin-sprintf-warn-1.c: Adjust.
* gcc/testsuite/gcc.dg/tree-ssa/builtin-sprintf-warn-13.c: New test.
* gcc/testsuite/gcc.dg/tree-ssa/pr79327-2.c: Ditto.

From-SVN: r245173

7 years agoPR c++/78689 - ICE on constructor with label
Jason Merrill [Fri, 3 Feb 2017 22:42:37 +0000 (17:42 -0500)]
PR c++/78689 - ICE on constructor with label

gcc/
* tree-inline.c (copy_tree_body_r) [COND_EXPR]: Revert change to
avoid copying non-taken branch.
gcc/cp/
* optimize.c (maybe_clone_body): Replace omitted parameters with
null lvalues.
* class.c (build_clone): Fix logic for omitting inherited parms.

From-SVN: r245172

7 years agore PR tree-optimization/79340 (Memory leaks in tree-vect-slp.c)
Jakub Jelinek [Fri, 3 Feb 2017 22:36:29 +0000 (23:36 +0100)]
re PR tree-optimization/79340 (Memory leaks in tree-vect-slp.c)

PR tree-optimization/79340
* tree-vect-loop.c (vectorizable_reduction): Release
vec_defs elements after safe_splicing them into other vectors.
Formatting fixes.

From-SVN: r245171

7 years agoPR c++/12245 - excessive memory use
Jason Merrill [Fri, 3 Feb 2017 19:44:27 +0000 (14:44 -0500)]
PR c++/12245 - excessive memory use

* constexpr.c (maybe_constant_value): Fold maybe_constant_value_1
back in.  Don't cache constants.
(maybe_constant_init): Don't cache constants.

From-SVN: r245169

7 years agoPR c++/79294 - ICE with invalid template argument
Jason Merrill [Fri, 3 Feb 2017 19:44:21 +0000 (14:44 -0500)]
PR c++/79294 - ICE with invalid template argument

* pt.c (convert_nontype_argument_function): Check value-dependence.
(convert_nontype_argument): Don't check it here for function ptrs.

From-SVN: r245168

7 years agoPR libstdc++/66145 ensure new ABI for ios::failure tests
Jonathan Wakely [Fri, 3 Feb 2017 19:26:51 +0000 (19:26 +0000)]
PR libstdc++/66145 ensure new ABI for ios::failure tests

PR libstdc++/66145
* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Restore ABI override
so new ios::failure can be caught even when old ABI is the default.
* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/
exceptions_failbit.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
exceptions_failbit.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_other/char/
exceptions_null.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_other/wchar_t/
exceptions_null.cc: Likewise.
* testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
* testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/
exceptions_null.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
exceptions_null.cc: Likewise.
* testsuite/27_io/ios_base/storage/2.cc: Likewise.

From-SVN: r245167

7 years agore PR tree-optimization/79327 (wrong code at -O2 and -fprintf-return-value)
Jakub Jelinek [Fri, 3 Feb 2017 19:16:39 +0000 (20:16 +0100)]
re PR tree-optimization/79327 (wrong code at -O2 and -fprintf-return-value)

PR tree-optimization/79327
* gimple-ssa-sprintf.c (adjust_range_for_overflow): If returning
true, always set *argmin and *argmax to TYPE_{MIN,MAX}_VALUE of
dirtype.
(format_integer): Use wide_int_to_tree instead of build_int_cst
+ to_?hwi.  If argmin is NULL, just set argmin and argmax to
TYPE_{MIN,MAX}_VALUE of argtype.  Simplify and fix computation
of shortest and longest sequence.

* gcc.dg/tree-ssa/pr79327.c: New test.
* gcc.dg/tree-ssa/builtin-sprintf-warn-1.c
(test_sprintf_chk_hh_nonconst): Don't expect 2 bogus warnings.
* gcc.dg/tree-ssa/builtin-sprintf-warn-3.c
(test_sprintf_chk_range_schar): Adjust dg-message.
* gcc.dg/tree-ssa/builtin-sprintf-warn-12.c: New test.
* gcc.c-torture/execute/pr79327.c: New test.

Co-Authored-By: Martin Sebor <msebor@redhat.com>
From-SVN: r245166

7 years agoPR libstdc++/60936 reduce coupling between objects in libstdc++.a
Jonathan Wakely [Fri, 3 Feb 2017 18:59:05 +0000 (18:59 +0000)]
PR libstdc++/60936 reduce coupling between objects in libstdc++.a

Move explicit instantiation definitions for string I/O functions into
their own files so that iostream and locale definitions are not needed
for uses of strings without I/O. Move functions for throwing C++11
exceptions into the individual files defining the exception types, so
that using any of the functions from functexcept.cc doesn't pull in
large pieces of the C++11 library. Finally, avoid using __int_to_char in
snprintf_lite.cc to avoid pulling in locale-inst.cc for one function.

PR libstdc++/60936
* src/c++11/Makefile.am: Add new files.
* src/c++11/Makefile.in: Regenerate.
* src/c++11/cow-string-inst.cc [!_GLIBCXX_USE_CXX11_ABI]
(operator<<, operator>>, getline): Move explicit instantiations to ...
* src/c++11/cow-string-io-inst.cc: ... new file.
* src/c++11/cow-wstring-inst.cc [!_GLIBCXX_USE_CXX11_ABI]
(operator<<, operator>>, getline): Move explicit instantiations to ...
* src/c++11/cow-wstring-io-inst.cc: ... new file.
* src/c++11/functexcept.cc (__throw_ios_failure, __throw_system_error)
(__throw_future_error, __throw_bad_function_call):
(__throw_regex_error): Move functions for C++11 exceptions to the
files that define the exception types.
* src/c++11/functional.cc (__throw_bad_function_call): Move here.
* src/c++11/future.cc (__throw_future_error): Likewise.
* src/c++11/ios.cc (__throw_ios_failure): Likewise.
* src/c++11/regex.cc (__throw_regex_error): Likewise.
* src/c++11/snprintf_lite.cc (__concat_size_t): Print decimal
representation directly instead of calling __int_to_char.
* src/c++11/sso_string.cc (__sso_string): New file for definition
of __sso_string type.
* src/c++11/string-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for
explicit instantiations of narrow string I/O functions.
* src/c++11/system_error.cc (__throw_system_error): Move here.
(__sso_string): Move to new file.
* src/c++11/wstring-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for
explicit instantiations of wide string I/O functions.
* src/c++98/misc-inst.cc [_GLIBCXX_USE_CXX11_ABI] (operator<<)
(operator>>, getline): Remove explicit instantiations from here.

From-SVN: r245162

7 years agoi386.c (dimode_scalar_chain::convert_reg): Use pextrd for TARGET_SSE4_1 when creating...
Uros Bizjak [Fri, 3 Feb 2017 18:54:20 +0000 (19:54 +0100)]
i386.c (dimode_scalar_chain::convert_reg): Use pextrd for TARGET_SSE4_1 when creating scalar copy.

* config/i386/i386.c (dimode_scalar_chain::convert_reg):
Use pextrd for TARGET_SSE4_1 when creating scalar copy.

From-SVN: r245161

7 years agore PR target/78862 (tile*: ICE with -fstack-protetor-strong)
Walter Lee [Fri, 3 Feb 2017 18:41:57 +0000 (18:41 +0000)]
re PR target/78862 (tile*: ICE with -fstack-protetor-strong)

PR target/78862
* config/tilegx/tilegx.md (tilegx_expand_prologue): Add blockage
after initial stackframe link reg save.
* config/tilepro/tilepro.md (tilepro_expand_prologue): Likewise.

From-SVN: r245159

7 years agoMAINTAINERS (Write After Approval): Add myself.
Doug Gilmore [Fri, 3 Feb 2017 18:41:16 +0000 (18:41 +0000)]
MAINTAINERS (Write After Approval): Add myself.

2017-02-03  Doug Gilmore <Doug.Gilmore@imgtec.com>

    * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r245158

7 years agore PR target/79354 (-mcpu=power8 -O2 generates power9 instruction on powerpc64le...
Jakub Jelinek [Fri, 3 Feb 2017 17:34:56 +0000 (18:34 +0100)]
re PR target/79354 (-mcpu=power8 -O2 generates power9 instruction on powerpc64le-linux)

PR target/79354
* config/rs6000/rs6000.md (movsi_from_sf): Use wb constraint instead of
wu for stxssp alternative.

* gcc.target/powerpc/pr79354.c: New test.
* gcc.c-torture/execute/pr79354.c: New test.

From-SVN: r245157

7 years agoPR tree-optimization/79352 - -fprintf-return-value doesn't handle flexible-like array...
Martin Sebor [Fri, 3 Feb 2017 16:38:15 +0000 (16:38 +0000)]
PR tree-optimization/79352 - -fprintf-return-value doesn't handle flexible-like array members properly

gcc/ChangeLog:

PR tree-optimization/79352
* gimple-fold.c (get_range_strlen): Add argument.
(get_range_strlen): Change return type to bool.
(get_maxval_strlen): Pass in a dummy argument.
* gimple-fold.h (get_range_strlen): Change return type to bool.
* gimple-ssa-sprintf.c (get_string_length): Set unlikely counter.
* tree.h (array_at_struct_end_p): Add argument.
* tree.c (array_at_struct_end_p): Handle it.

gcc/testsuite/ChangeLog:

PR tree-optimization/79352
* gcc.dg/tree-ssa/pr79352.c: New test.

From-SVN: r245156

7 years agoSimplify creation of target_clones (PR lto/66295)
Martin Liska [Fri, 3 Feb 2017 15:22:47 +0000 (16:22 +0100)]
Simplify creation of target_clones (PR lto/66295)

2017-02-03  Martin Liska  <mliska@suse.cz>

PR lto/66295
* multiple_target.c (create_dispatcher_calls): Redirect edge
from a caller of a dispatcher.
(expand_target_clones): Make the clones local.
(ipa_target_clone): Do both target clones and resolvers.
(ipa_dispatcher_calls): Remove the pass.
(pass_dispatcher_calls::gate): Likewise.
(make_pass_dispatcher_calls): Likewise.
* passes.def (pass_target_clone): Put as very first IPA early
pass.
2017-02-03  Martin Liska  <mliska@suse.cz>

PR lto/66295
* gcc.target/i386/mvc9.c: New test.

From-SVN: r245155

7 years agoBail out binds_to_current_def_p for ifunc functions.
Martin Liska [Fri, 3 Feb 2017 15:15:51 +0000 (16:15 +0100)]
Bail out binds_to_current_def_p for ifunc functions.

2017-02-03  Martin Liska  <mliska@suse.cz>

* symtab.c (symtab_node::binds_to_current_def_p): Bail out
in case of a function with ifunc attribute.

From-SVN: r245154

7 years agoIPA: enhance dump output
Martin Liska [Fri, 3 Feb 2017 15:14:40 +0000 (16:14 +0100)]
IPA: enhance dump output

2017-02-03  Martin Liska  <mliska@suse.cz>

* cgraph.c (cgraph_node::dump): Dump function version info.
* symtab.c (symtab_node::dump_base): Add missing new line.

From-SVN: r245153

7 years agore PR rtl-optimization/78241 (wrong code with -funroll-loops)
Pat Haugen [Fri, 3 Feb 2017 14:20:30 +0000 (14:20 +0000)]
re PR rtl-optimization/78241 (wrong code with -funroll-loops)

PR rtl-optimization/78241
* loop-unroll.c (unroll_loop_runtime_iterations): Don't adjust 'niter', but
emit initial peel copy if niter expr is not reliable.

From-SVN: r245152

7 years agotree-ssa-ifcombine.c (update_profile_after_ifcombine): New function.
Jan Hubicka [Fri, 3 Feb 2017 14:03:35 +0000 (15:03 +0100)]
tree-ssa-ifcombine.c (update_profile_after_ifcombine): New function.

* tree-ssa-ifcombine.c (update_profile_after_ifcombine): New function.
(ifcombine_ifandif): Use it.
* gcc.dg/tree-ssa/ssa-ifcombine-1.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-2.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-3.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-4.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-5.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-6.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-7.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-8.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-9.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-10.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-11.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-12.c: Check for no profile mismatches.
* gcc.dg/tree-ssa/ssa-ifcombine-13.c: Check for no profile mismatches.

From-SVN: r245151

7 years agore PR sanitizer/78663 (Hundreds of asan failures on x86_64-apple-darwin10 at r243019)
Maxim Ostapenko [Fri, 3 Feb 2017 12:17:59 +0000 (12:17 +0000)]
re PR sanitizer/78663 (Hundreds of asan failures on x86_64-apple-darwin10 at r243019)

PR sanitizer/78663
* sanitizer_common/sanitizer_mac.cc: Cherry-pick upstream r293992.
* sanitizer_common/sanitizer_platform_interceptors.h: Likewise.

From-SVN: r245149

7 years agoDocument default value for use-after-scope-direct-emission-threshold
Martin Liska [Fri, 3 Feb 2017 09:10:37 +0000 (10:10 +0100)]
Document default value for use-after-scope-direct-emission-threshold

2017-02-03  Martin Liska  <mliska@suse.cz>

* doc/invoke.texi: Document default value for
use-after-scope-direct-emission-threshold.

From-SVN: r245147

7 years agoFix memory leaks in gimple-ssa-sprintf.c (PR tree-optimization/79339).
Martin Liska [Fri, 3 Feb 2017 08:20:57 +0000 (09:20 +0100)]
Fix memory leaks in gimple-ssa-sprintf.c (PR tree-optimization/79339).

2017-02-03  Martin Liska  <mliska@suse.cz>

PR tree-optimization/79339
* gimple-ssa-sprintf.c (format_floating_max): Call mpfr_clear.
(format_floating): Likewise.

From-SVN: r245146

7 years agoFix memory leaks in IPA CP (PR ipa/79337).
Martin Liska [Fri, 3 Feb 2017 08:20:02 +0000 (09:20 +0100)]
Fix memory leaks in IPA CP (PR ipa/79337).

2017-02-03  Martin Liska  <mliska@suse.cz>

PR ipa/79337
* ipa-prop.c (ipa_node_params_t::insert): Remove current
implementation.
(ipa_node_params_t::remove): Likewise.
* ipa-prop.h (ipa_node_params::ipa_node_params): Make default
initialization from removed ipa_node_params_t::insert.
(ipa_node_params::~ipa_node_params): Move from removed
ipa_node_params_t::release.
* symbol-summary.h (symbol_summary::m_released): New member.
Do not release a summary twice.  Do not allow to call finalizer
for types of a summary that live in GGC memory.

From-SVN: r245145

7 years agoaarch64.c (thunderx2t99_tunings): Enable AES and cmp_branch fusion.
Naveen H.S [Fri, 3 Feb 2017 05:55:46 +0000 (05:55 +0000)]
aarch64.c (thunderx2t99_tunings): Enable AES and cmp_branch fusion.

2017-02-02  Naveen H.S  <Naveen.Hurugalawadi@cavium.com>

* config/aarch64/aarch64.c (thunderx2t99_tunings): Enable AES and
cmp_branch fusion.

From-SVN: r245143

7 years agoPR middle-end/79275 - -Wformat-overflow false positive exceeding INT_MAX in glibc...
Martin Sebor [Fri, 3 Feb 2017 02:18:59 +0000 (02:18 +0000)]
PR middle-end/79275 -  -Wformat-overflow false positive exceeding INT_MAX in glibc sysdeps/posix/tempname.c

gcc/testsuite/ChangeLog:

PR middle-end/79275
* gcc.dg/tree-ssa/builtin-sprintf-warn-11.c: New test.
* gcc.dg/tree-ssa/pr79275.c: New test.

gcc/ChangeLog:

PR middle-end/79275
* gimple-ssa-sprintf.c (get_string_length): Set lower bound to zero.
(format_string): Tighten up the range of output for non-constant
strings and correct the expected range for wide non-constant strings.

From-SVN: r245142

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

From-SVN: r245141

7 years agosms-8.c: Update options for powerpc*-*-*.
Aaron Sawdey [Thu, 2 Feb 2017 23:50:53 +0000 (23:50 +0000)]
sms-8.c: Update options for powerpc*-*-*.

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

        * gcc.dg/sms-8.c: Update options for powerpc*-*-*.

From-SVN: r245138

7 years agoinvoke.texi (-maccumulate-args): Fix bad grammar.
Martin Sebor [Thu, 2 Feb 2017 21:00:49 +0000 (21:00 +0000)]
invoke.texi (-maccumulate-args): Fix bad grammar.

gcc/ChangeLog:
       * doc/invoke.texi (-maccumulate-args): Fix bad grammar.

From-SVN: r245137

7 years agoPR middle-end/32003 - Undocumented -fdump-tree options
Martin Sebor [Thu, 2 Feb 2017 20:57:37 +0000 (20:57 +0000)]
PR middle-end/32003 - Undocumented -fdump-tree options

gcc/ChangeLog:
       * doc/invoke.texi (-fdump-rtl-): Remove pass-specific options from
       index.
       (-fdump-tree-@var): Add to index and document how to come up
       with pass-specific option and dump file names.
       (-fdump-passes): Clarify where to look for output.

From-SVN: r245136

7 years agore PR tree-optimization/77445 (Performance drop after r239219 on coremark test)
Jan Hubicka [Thu, 2 Feb 2017 20:22:13 +0000 (21:22 +0100)]
re PR tree-optimization/77445 (Performance drop after r239219 on coremark test)

PR middle-end/77445
* gcc.dg/tree-ssa/pr77445-2.c: Update testcase to check that all
threading is done.
* tree-ssa-threadbackward.c (profitable_jump_thread_path): Dump
statistics of the analyzed path; allow threading for speed when
any of BBs along the path are optimized for speed.

From-SVN: r245135

7 years agoUpdate libstdc++ baseline symbols for x32
H.J. Lu [Thu, 2 Feb 2017 20:18:43 +0000 (20:18 +0000)]
Update libstdc++ baseline symbols for x32

* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.

From-SVN: r245134

7 years agore PR middle-end/78142 (Commit r241590 is more registers to be used for on gcc.target...
Tamar Christina [Thu, 2 Feb 2017 16:35:15 +0000 (16:35 +0000)]
re PR middle-end/78142 (Commit r241590 is more registers to be used for on gcc.target/aarch64/vector_initialization_nostack.c)

PR middle-end/78142
* gcc.target/aarch64/vector_initialization_nostack.c
(f12): Use one vector

From-SVN: r245132

7 years agoSeparate Solaris/SPARC and x86 baselines
Rainer Orth [Thu, 2 Feb 2017 16:24:03 +0000 (16:24 +0000)]
Separate Solaris/SPARC and x86 baselines

* configure.host: Separate Solaris/SPARC and x86 baselines.
* config/abi/post/solaris2.10/baseline_symbols.txt: Move ...
* config/abi/post/sparc-solaris2.10/baseline_symbols.txt: ... here.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Move ...
* config/abi/post/sparc-solaris2.10/sparcv9/baseline_symbols.txt:
... here.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Move ...
* config/abi/post/i386-solaris2.10/amd64/baseline_symbols.txt: ... here.
* config/abi/post/i386-solaris2.10/baseline_symbols.txt: New file.
* config/abi/post/solaris2.11/baseline_symbols.txt: Move ...
* config/abi/post/sparc-solaris2.11/baseline_symbols.txt: ... here.
* config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Move ...
* config/abi/post/sparc-solaris2.11/sparcv9/baseline_symbols.txt:
... here.
* config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Move ...
* config/abi/post/i386-solaris2.11/amd64/baseline_symbols.txt: ... here.
* config/abi/post/i386-solaris2.11/baseline_symbols.txt: New file.

From-SVN: r245131

7 years agoUpdate Solaris baselines
Rainer Orth [Thu, 2 Feb 2017 16:23:11 +0000 (16:23 +0000)]
Update Solaris baselines

* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.11/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise.

From-SVN: r245130

7 years agolibgomp, nvptx plugin: Make "nvptx_exec" static
Thomas Schwinge [Thu, 2 Feb 2017 14:35:30 +0000 (15:35 +0100)]
libgomp, nvptx plugin: Make "nvptx_exec" static

libgomp/
* plugin/plugin-nvptx.c (nvptx_exec): Make it static.

From-SVN: r245127

7 years agolibgomp: Normalize the names of a few functions of the libgomp plugin API
Thomas Schwinge [Thu, 2 Feb 2017 14:13:57 +0000 (15:13 +0100)]
libgomp: Normalize the names of a few functions of the libgomp plugin API

libgomp/
* libgomp-plugin.h (GOMP_OFFLOAD_openacc_parallel): Rename to
GOMP_OFFLOAD_openacc_exec.  Adjust all users.
(GOMP_OFFLOAD_openacc_get_current_cuda_device): Rename to
GOMP_OFFLOAD_openacc_cuda_get_current_device.  Adjust all users.
(GOMP_OFFLOAD_openacc_get_current_cuda_context): Rename to
GOMP_OFFLOAD_openacc_cuda_get_current_context.  Adjust all users.
(GOMP_OFFLOAD_openacc_get_cuda_stream): Rename to
GOMP_OFFLOAD_openacc_cuda_get_stream.  Adjust all users.
(GOMP_OFFLOAD_openacc_set_cuda_stream): Rename to
GOMP_OFFLOAD_openacc_cuda_set_stream.  Adjust all users.

From-SVN: r245125

7 years agore PR middle-end/78468 (libgomp.c/reduction-10.c and many more FAIL)
Eric Botcazou [Thu, 2 Feb 2017 12:39:09 +0000 (12:39 +0000)]
re PR middle-end/78468 (libgomp.c/reduction-10.c and many more FAIL)

PR middle-end/78468
* emit-rtl.c (init_emit): Add ??? comment for problematic alignment
settings of the virtual registers.

Revert again
2016-08-23  Dominik Vogt  <vogt@linux.vnet.ibm.com>

* explow.c (get_dynamic_stack_size): Take known alignment of stack
pointer + STACK_DYNAMIC_OFFSET into account when calculating the size
needed.

From-SVN: r245124

7 years agoS/390: Remove unused expanders from vx-builtins.md
Andreas Krebbel [Thu, 2 Feb 2017 12:19:50 +0000 (12:19 +0000)]
S/390: Remove unused expanders from vx-builtins.md

These expanders are currently not used.  The vecintrin.h header file
expands e.g. vec_ceil directly to the vfidb low-level builtin.

gcc/ChangeLog:

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

* config/s390/vx-builtins.md ("vec_ceil", "vec_floor")
("vec_trunc", "vec_roundc", "vec_round"): Remove expanders.

From-SVN: r245123

7 years agoS/390: Add missing comments listing mnemonics.
Andreas Krebbel [Thu, 2 Feb 2017 12:18:52 +0000 (12:18 +0000)]
S/390: Add missing comments listing mnemonics.

These were useful in the past but are currently lacking on a couple of
patterns.  Fixed with this patch.

gcc/ChangeLog:

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

* config/s390/s390.md: Add missing comments with the expanded
mnemonics.
* config/s390/vector.md: Likewise.
* config/s390/vx-builtins.md: Likewise.

From-SVN: r245122

7 years agopr63316.c: Use dg-skip-if instead of dg-options.
Jakub Jelinek [Thu, 2 Feb 2017 10:18:49 +0000 (11:18 +0100)]
pr63316.c: Use dg-skip-if instead of dg-options.

* c-c++-common/asan/pr63316.c: Use dg-skip-if instead of dg-options.
* c-c++-common/asan/misalign-1.c: Likewise.
* c-c++-common/asan/misalign-2.c: Likewise.
* g++.dg/asan/pr69276.C: Add dg-skip-if, remove dg-additional-options.
* gcc.dg/asan/pr66314.c: Remove -Os from dg-options, add dg-skip-if.
* gcc.dg/asan/use-after-scope-3.c: Use dg-skip-if instead of dg-options.
* gcc.dg/asan/use-after-scope-9.c: Add dg-skip-if, remove -O2 and
add -ffat-lto-objects from/to dg-additional-options.
* gcc.dg/asan/use-after-scope-10.c: Add dg-skip-if, remove -O2 from
dg-additional-options.

From-SVN: r245121

7 years agore PR target/79197 (ICE in extract_insn in gcc/recog.c:2311)
Jakub Jelinek [Thu, 2 Feb 2017 10:05:26 +0000 (11:05 +0100)]
re PR target/79197 (ICE in extract_insn in gcc/recog.c:2311)

PR target/79197
* config/rs6000/rs6000.md (*fixuns_trunc<mode>di2_fctiduz): Rename to ...
(fixuns_trunc<mode>di2): ... this, remove previous expander.  Put all
conditions on a single line.

* gcc.target/powerpc/pr79197.c: New test.
* gcc.c-torture/compile/pr79197.c: New test.

From-SVN: r245120

7 years agopr71078-3.c: Do not rely on math.h.
Richard Biener [Thu, 2 Feb 2017 08:58:48 +0000 (08:58 +0000)]
pr71078-3.c: Do not rely on math.h.

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

* gcc.dg/tree-ssa/pr71078-3.c: Do not rely on math.h.

From-SVN: r245119

7 years agore PR c++/14179 (out of memory while parsing array with many initializers)
Richard Biener [Thu, 2 Feb 2017 08:55:44 +0000 (08:55 +0000)]
re PR c++/14179 (out of memory while parsing array with many initializers)

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

PR cp/14179
* cp-gimplify.c (cp_fold): When folding a CONSTRUCTOR copy
it lazily on the first changed element only and copy it
fully upfront, only storing changed elements.

From-SVN: r245118

7 years agore PR c++/69637 (ICE on an invalid bit-field with template name for width)
Paolo Carlini [Thu, 2 Feb 2017 08:54:55 +0000 (08:54 +0000)]
re PR c++/69637 (ICE on an invalid bit-field with template name for width)

/cp
2017-02-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/69637
* decl2.c (grokbitfield): In case of error don't set-up DECL_INITIAL
to the width.

/testsuite
2017-02-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/69637
* g++.dg/cpp0x/pr69637-1.C: New.
* g++.dg/cpp0x/pr69637-2.C: Likewise.

From-SVN: r245117

7 years agoS/390: Rename __S390_VX__ to __VX__.
Andreas Krebbel [Thu, 2 Feb 2017 08:32:44 +0000 (08:32 +0000)]
S/390: Rename __S390_VX__ to __VX__.

gcc/ChangeLog:

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

* config/s390/s390-c.c (s390_cpu_cpp_builtins_internal): Rename
__S390_VX__ to __VX__.

gcc/testsuite/ChangeLog:

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

* gcc.target/s390/s390.exp: Rename __S390_VX__ to __VX__.

From-SVN: r245116

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

From-SVN: r245114

7 years ago* de.po: Update.
Joseph Myers [Wed, 1 Feb 2017 23:59:21 +0000 (23:59 +0000)]
* de.po: Update.

From-SVN: r245111

7 years agore PR target/70012 (test case gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c fails)
Bill Schmidt [Wed, 1 Feb 2017 22:11:57 +0000 (22:11 +0000)]
re PR target/70012 (test case gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c fails)

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

PR target/70012
* gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c: Adjust test
conditions.

From-SVN: r245108

7 years agore PR ada/79309 (incorrectly bounded calls to strncat in adaint.c)
Eric Botcazou [Wed, 1 Feb 2017 21:36:09 +0000 (21:36 +0000)]
re PR ada/79309 (incorrectly bounded calls to strncat in adaint.c)

PR ada/79309
* adaint.c (__gnat_killprocesstree): Use strlen instead of sizeof.

From-SVN: r245107

7 years agore PR ada/79309 (incorrectly bounded calls to strncat in adaint.c)
Eric Botcazou [Wed, 1 Feb 2017 20:36:23 +0000 (20:36 +0000)]
re PR ada/79309 (incorrectly bounded calls to strncat in adaint.c)

PR ada/79309
* adaint.c (__gnat_killprocesstree): Fix broken string handling.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r245103

7 years agotree-vect-loop.c (vect_compute_single_scalar_iteration_cost): Pass stmt_info to recor...
Andrew Pinski [Wed, 1 Feb 2017 18:30:50 +0000 (18:30 +0000)]
tree-vect-loop.c (vect_compute_single_scalar_iteration_cost): Pass stmt_info to record_stmt_cost.

2017-02-01  Andrew Pinski  <apinski@cavium.com>

        * tree-vect-loop.c (vect_compute_single_scalar_iteration_cost): Pass
        stmt_info to record_stmt_cost.
        (vect_get_known_peeling_cost): Pass stmt_info if known to
        record_stmt_cost.
        * config/aarch64/aarch64-protos.h (cpu_vector_cost): Split
        cpu_vector_cost field into
        scalar_int_stmt_cost and scalar_fp_stmt_cost.  Split vec_stmt_cost
        field into vec_int_stmt_cost and vec_fp_stmt_cost.
        * config/aarch64/aarch64.c (generic_vector_cost): Update for the
        splitting of scalar_stmt_cost and vec_stmt_cost.
        (thunderx_vector_cost): Likewise.
        (cortexa57_vector_cost): LIkewise.
        (exynosm1_vector_cost): Likewise.
        (xgene1_vector_cost): Likewise.
        (thunderx2t99_vector_cost): Improve after the splitting of the two
        fields.
        (aarch64_builtin_vectorization_cost): Update for the splitting of
        scalar_stmt_cost and vec_stmt_cost.

From-SVN: r245101

7 years agoFix __atomic to not implement atomic loads with CAS.
Torvald Riegel [Wed, 1 Feb 2017 17:21:59 +0000 (17:21 +0000)]
Fix __atomic to not implement atomic loads with CAS.

gcc/
* builtins.c (fold_builtin_atomic_always_lock_free): Make "lock-free"
conditional on existance of a fast atomic load.
* optabs-query.c (can_atomic_load_p): New function.
* optabs-query.h (can_atomic_load_p): Declare it.
* optabs.c (expand_atomic_exchange): Always delegate to libatomic if
no fast atomic load is available for the particular size of access.
(expand_atomic_compare_and_swap): Likewise.
(expand_atomic_load): Likewise.
(expand_atomic_store): Likewise.
(expand_atomic_fetch_op): Likewise.
* testsuite/lib/target-supports.exp
(check_effective_target_sync_int_128): Remove x86 because it provides
no fast atomic load.
(check_effective_target_sync_int_128_runtime): Likewise.

libatomic/
* acinclude.m4: Add #define FAST_ATOMIC_LDST_*.
* auto-config.h.in: Regenerate.
* config/x86/host-config.h (FAST_ATOMIC_LDST_16): Define to 0.
(atomic_compare_exchange_n): New.
* glfree.c (EXACT, LARGER): Change condition and add comments.

From-SVN: r245098

7 years agore PR testsuite/79324 (The tests introduced at revision r245052 fail on darwin)
Jakub Jelinek [Wed, 1 Feb 2017 15:47:52 +0000 (16:47 +0100)]
re PR testsuite/79324 (The tests introduced at revision r245052 fail on darwin)

PR testsuite/79324
* gcc.dg/debug/dwarf2/align-1.c: Add -gno-strict-dwarf to dg-options.
* gcc.dg/debug/dwarf2/align-2.c: Likewise.
* gcc.dg/debug/dwarf2/align-3.c: Likewise.
* gcc.dg/debug/dwarf2/align-4.c: Likewise.
* gcc.dg/debug/dwarf2/align-5.c: Likewise.
* gcc.dg/debug/dwarf2/align-6.c: Likewise.
* gcc.dg/debug/dwarf2/align-as-1.c: Likewise.
* g++.dg/debug/dwarf2/align-1.C: Likewise.
* g++.dg/debug/dwarf2/align-2.C: Likewise.
* g++.dg/debug/dwarf2/align-3.C: Likewise.
* g++.dg/debug/dwarf2/align-4.C: Likewise.
* g++.dg/debug/dwarf2/align-5.C: Likewise.
* g++.dg/debug/dwarf2/align-6.C: Likewise.

From-SVN: r245097

7 years agographite.c: Include tree-vectorizer.h for find_loop_location.
Richard Biener [Wed, 1 Feb 2017 14:05:09 +0000 (14:05 +0000)]
graphite.c: Include tree-vectorizer.h for find_loop_location.

2017-02-01  Richard Biener  <rguenther@suse.de>

* graphite.c: Include tree-vectorizer.h for find_loop_location.
(graphite_transform_loops): Provide opt-info for optimized nests.
* tree-parloop.c (parallelize_loops): Provide opt-info for
parallelized loops.

From-SVN: r245096

7 years agoAdd dg-require-alias to a ICF test (PR testsuite/79272).
Martin Liska [Wed, 1 Feb 2017 14:04:38 +0000 (15:04 +0100)]
Add dg-require-alias to a ICF test (PR testsuite/79272).

2017-02-01  Martin Liska  <mliska@suse.cz>

PR testsuite/79272
* gcc.dg/ipa/pr77653.c: Add dg-require-alias to the test.

From-SVN: r245095

7 years agore PR tree-optimization/76957 (XFAIL: gcc.dg/graphite/scop-dsyr2k.c scan-tree-dump...
Richard Biener [Wed, 1 Feb 2017 12:58:27 +0000 (12:58 +0000)]
re PR tree-optimization/76957 (XFAIL: gcc.dg/graphite/scop-dsyr2k.c scan-tree-dump-times graphite "number of SCoPs)

2017-02-01  Richard Biener  <rguenther@suse.de>

PR testsuite/76957
* gcc.dg/graphite/scop-dsyr2k-2.c: New testcase.
* gcc.dg/graphite/scop-dsyrk-2.c: Likewise.
* gcc.dg/graphite/scop-dsyr2k.c: XFAIL.
* gcc.dg/graphite/scop-dsyrk.c: Likewise.

From-SVN: r245094

7 years agoPR78346 make <bits/predefined_ops.h> handle stashing iterators
Jonathan Wakely [Wed, 1 Feb 2017 12:57:35 +0000 (12:57 +0000)]
PR78346 make <bits/predefined_ops.h> handle stashing iterators

PR libstdc++/78346
* include/bits/predefined_ops.h (_Iter_equals_iter): Store iterator
not its referent.
(_Iter_comp_to_iter): Likewise.
* testsuite/25_algorithms/search/78346.cc: New test.

From-SVN: r245090

7 years agore PR tree-optimization/79315 (ICE while building SPEC CPU 2006 FP with -Ofast -ftree...
Richard Biener [Wed, 1 Feb 2017 12:47:25 +0000 (12:47 +0000)]
re PR tree-optimization/79315 (ICE while building SPEC CPU 2006 FP with -Ofast -ftree-parallelize-loops)

2017-02-01  Richard Biener  <rguenther@suse.de>

PR middle-end/79315
* tree-cfg.c (move_stmt_op): Never set TREE_BLOCK when it
was not set before.

* gfortran.dg/pr79315.f90: New testcase.

From-SVN: r245089

7 years agoPR libstdc++/79254 simplify exception-safety in copy assignment
Jonathan Wakely [Wed, 1 Feb 2017 11:41:48 +0000 (11:41 +0000)]
PR libstdc++/79254 simplify exception-safety in copy assignment

PR libstdc++/79254
* config/abi/pre/gnu.ver: Remove recently added symbols.
* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
(basic_string::_M_copy_assign): Remove.
(basic_string::operator=(const basic_string&)): Don't dispatch to
_M_copy_assign. If source object is small just deallocate, otherwise
perform new allocation before making any changes.
* include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
(basic_string::_M_copy_assign(const basic_string&, true_type)):
Remove.
* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
Test cases where the allocators are equal or the string is small.
* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
Likewise.

From-SVN: r245085

7 years agore PR other/79250 (brig/brigfrontend/brig-to-generic.cc: two small problems)
Pekka Jääskeläinen [Wed, 1 Feb 2017 10:06:13 +0000 (10:06 +0000)]
re PR other/79250 (brig/brigfrontend/brig-to-generic.cc: two small problems)

* brigfrontend/brig-code-entry-handler.cc: fix address
expressions which refer only to offset 0, but nothing else.
* brigfrontend/brig-lane-inst-handler.cc: fix
activelanepermute_b64 HSAIL instruction.
* brigfrontend/brig-to-generic.cc: remove useless c_str()
call. Add missing va_end (). Fix PR79250

From-SVN: r245084

7 years agore PR tree-optimization/71824 (ICE when compiling libiberty with Graphite loop optimi...
Richard Biener [Wed, 1 Feb 2017 08:02:50 +0000 (08:02 +0000)]
re PR tree-optimization/71824 (ICE when compiling libiberty with Graphite loop optimizations)

2017-02-01  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71824
* graphite-scop-detection.c (scop_detection::build_scop_breadth):
Verify the loops are valid in the merged SESE region.
(scop_detection::can_represent_loop_1): Check analyzing the
evolution of the number of iterations in the region succeeds.

* gcc.dg/graphite/pr71824.c: New testcase.

From-SVN: r245081

7 years agoconfigure.tgt: Fix i?86-*-linux* entry.
Jakub Jelinek [Wed, 1 Feb 2017 07:56:49 +0000 (08:56 +0100)]
configure.tgt: Fix i?86-*-linux* entry.

* configure.tgt: Fix i?86-*-linux* entry.
* rt/sat_arithmetic.c (__hsail_sat_add_u32, __hsail_sat_add_u64,
__hsail_sat_add_s32, __hsail_sat_add_s64): Use __builtin_add_overflow.
(__hsail_sat_sub_u8, __hsail_sat_sub_u16): Remove pointless for overflow
over maximum.
(__hsail_sat_sub_u32, __hsail_sat_sub_u64, __hsail_sat_sub_s32,
__hsail_sat_sub_s64): Use __builtin_sub_overflow.
(__hsail_sat_mul_u32, __hsail_sat_mul_u64, __hsail_sat_mul_s32,
__hsail_sat_mul_s64): Use __builtin_mul_overflow.
* rt/arithmetic.c (__hsail_borrow_u32, __hsail_borrow_u64): Use
__builtin_sub_overflow_p.
(__hsail_carry_u32, __hsail_carry_u64): Use __builtin_add_overflow_p.
* rt/misc.c (__hsail_groupbaseptr, __hsail_kernargbaseptr_u64):
Cast pointers to uintptr_t first before casting to some other integral
type.
* rt/segment.c (__hsail_segmentp_private, __hsail_segmentp_group): Likewise.
* rt/queue.c (__hsail_ldqueuereadindex, __hsail_ldqueuewriteindex,
__hsail_addqueuewriteindex, __hsail_casqueuewriteindex,
__hsail_stqueuereadindex, __hsail_stqueuewriteindex): Cast integral value
to uintptr_t first before casting to pointer.
* rt/workitems.c (__hsail_alloca_pop_frame): Cast memcpy first argument to
void * to avoid warning.

From-SVN: r245080

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

From-SVN: r245079

7 years agoi386.c (ix86_expand_split_stack_prologue): Add REG_ARGS_SIZE note to 32-bit push...
Ian Lance Taylor [Tue, 31 Jan 2017 23:49:26 +0000 (23:49 +0000)]
i386.c (ix86_expand_split_stack_prologue): Add REG_ARGS_SIZE note to 32-bit push insns and call insn.

* config/i386/i386.c (ix86_expand_split_stack_prologue): Add
REG_ARGS_SIZE note to 32-bit push insns and call insn.

From-SVN: r245076

7 years agore PR c++/79304 (diagnostic shows bogus expression ((X<T>*)this)->.c)
Jakub Jelinek [Tue, 31 Jan 2017 21:38:00 +0000 (22:38 +0100)]
re PR c++/79304 (diagnostic shows bogus expression ((X<T>*)this)->.c)

PR c++/79304
* error.c (dump_expr) <case COMPONENT_REF>: Don't print .
after ARROW_EXPR.

* g++.dg/diagnostic/pr79304.C: New test.

From-SVN: r245073

7 years agoFix ICE with spelling hints within explicit namespace aliases (PR c++/79298)
David Malcolm [Tue, 31 Jan 2017 21:30:42 +0000 (21:30 +0000)]
Fix ICE with spelling hints within explicit namespace aliases (PR c++/79298)

gcc/cp/ChangeLog:
PR c++/79298
* name-lookup.c (suggest_alternative_in_explicit_scope): Resolve
any namespace aliases.

gcc/testsuite/ChangeLog:
PR c++/79298
* g++.dg/spellcheck-pr79298.C: New test case.

From-SVN: r245072