Commit Graph

151726 Commits

Author SHA1 Message Date
Martin Sebor
3f3430400b 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
2017-02-03 09:38:15 -07:00
Martin Liska
46a2ab580a 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
2017-02-03 15:22:47 +00:00
Martin Liska
31a31c9dc1 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
2017-02-03 15:15:51 +00:00
Martin Liska
9e57787b84 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
2017-02-03 15:14:40 +00:00
Pat Haugen
baa2d1cd76 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
2017-02-03 14:20:30 +00:00
Jan Hubicka
30c6ec2f53 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
2017-02-03 14:03:35 +00:00
Maxim Ostapenko
778e0ac397 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
2017-02-03 14:17:59 +02:00
Martin Liska
5dd5e20438 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
2017-02-03 09:10:37 +00:00
Martin Liska
0a95c7e2c9 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
2017-02-03 08:20:57 +00:00
Martin Liska
e806796de0 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
2017-02-03 08:20:02 +00:00
Naveen H.S
6d5b4f9e71 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
2017-02-03 05:55:46 +00:00
Martin Sebor
ebee1eb978 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
2017-02-02 19:18:59 -07:00
GCC Administrator
92d8bb06dc Daily bump.
From-SVN: r245141
2017-02-03 00:16:14 +00:00
Aaron Sawdey
dcd25b8a01 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
2017-02-02 17:50:53 -06:00
Martin Sebor
30b664dfa5 invoke.texi (-maccumulate-args): Fix bad grammar.
gcc/ChangeLog:
       * doc/invoke.texi (-maccumulate-args): Fix bad grammar.

From-SVN: r245137
2017-02-02 14:00:49 -07:00
Martin Sebor
66818b0350 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
2017-02-02 13:57:37 -07:00
Jan Hubicka
0f0c2cc3a1 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
2017-02-02 20:22:13 +00:00
H.J. Lu
b47507fe99 Update libstdc++ baseline symbols for x32
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.

From-SVN: r245134
2017-02-02 12:18:43 -08:00
Tamar Christina
1c37284010 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
2017-02-02 16:35:15 +00:00
Rainer Orth
a76745e690 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
2017-02-02 16:24:03 +00:00
Rainer Orth
f0272b9974 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
2017-02-02 16:23:11 +00:00
Thomas Schwinge
e70ab10d5c libgomp, nvptx plugin: Make "nvptx_exec" static
libgomp/
	* plugin/plugin-nvptx.c (nvptx_exec): Make it static.

From-SVN: r245127
2017-02-02 15:35:30 +01:00
Thomas Schwinge
345a8c1712 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
2017-02-02 15:13:57 +01:00
Eric Botcazou
da75ca93f8 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
2017-02-02 12:39:09 +00:00
Andreas Krebbel
aa2cbb1a6c 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
2017-02-02 12:19:50 +00:00
Andreas Krebbel
50dc4eedfe 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
2017-02-02 12:18:52 +00:00
Jakub Jelinek
bef7e56112 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
2017-02-02 11:18:49 +01:00
Jakub Jelinek
9f11a4a76f 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
2017-02-02 11:05:26 +01:00
Richard Biener
0966167499 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
2017-02-02 08:58:48 +00:00
Richard Biener
27de0fab0f 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
2017-02-02 08:55:44 +00:00
Paolo Carlini
d8d58893e4 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
2017-02-02 08:54:55 +00:00
Andreas Krebbel
521a70a405 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
2017-02-02 08:32:44 +00:00
GCC Administrator
6cd3a212ed Daily bump.
From-SVN: r245114
2017-02-02 00:16:13 +00:00
Joseph Myers
da98cbc447 * de.po: Update.
From-SVN: r245111
2017-02-01 23:59:21 +00:00
Bill Schmidt
e26b502d9b 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
2017-02-01 22:11:57 +00:00
Eric Botcazou
60ab85958c 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
2017-02-01 21:36:09 +00:00
Eric Botcazou
372db67b4d 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
2017-02-01 20:36:23 +00:00
Andrew Pinski
cd8ae5edfe 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
2017-02-01 10:30:50 -08:00
Torvald Riegel
969a32ce93 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
2017-02-01 17:21:59 +00:00
Jakub Jelinek
55e75c7c6b 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
2017-02-01 16:47:52 +01:00
Richard Biener
558b318588 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
2017-02-01 14:05:09 +00:00
Martin Liska
a44769735d 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
2017-02-01 14:04:38 +00:00
Richard Biener
3f3181b1c2 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
2017-02-01 12:58:27 +00:00
Jonathan Wakely
2cf9276ba7 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
2017-02-01 12:57:35 +00:00
Richard Biener
1e7ef862ac 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
2017-02-01 12:47:25 +00:00
Jonathan Wakely
11d10beb57 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
2017-02-01 11:41:48 +00:00
Pekka Jääskeläinen
a0deb99254 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
2017-02-01 10:06:13 +00:00
Richard Biener
405a740640 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
2017-02-01 08:02:50 +00:00
Jakub Jelinek
315405b669 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
2017-02-01 08:56:49 +01:00
GCC Administrator
6b3430bd61 Daily bump.
From-SVN: r245079
2017-02-01 00:16:17 +00:00