Commit Graph

162554 Commits

Author SHA1 Message Date
Tom de Vries
3e85d88526 [testsuite/guality] Fix tcl error on gdb -v failure
2018-06-25  Tom de Vries  <tdevries@suse.de>

	* lib/gcc-gdb-test.exp (report_gdb): Handle gdb -v failure.

From-SVN: r262021
2018-06-25 15:56:13 +00:00
Carl Love
f74fc01dcd vsx.md: Change word selector to prefered location.
gcc/ChangeLog:

2018-06-25  Carl Love  <cel@us.ibm.com>

	* config/rs6000/vsx.md: Change word selector to prefered location.

Signed-off-by: Carl Love <cel@us.ibm.com>
---
 gcc/config/rs6000/vsx.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/config/rs6000/vsx.md b/gcc/config/rs6000/vsx.md
index a528ef2e8..6e7a4277f 100644
--- a/gcc/config/rs6000/vsx.md
+++ b/gcc/config/rs6000/vsx.md
@@ -3934,7 +3934,7 @@
 
   operands[5] = gen_rtx_REG (V4SFmode, tmp_regno);
   operands[6] = gen_rtx_REG (V4SImode, tmp_regno);
-  operands[7] = GEN_INT (BYTES_BIG_ENDIAN ? 1 : 2);
+  operands[7] = GEN_INT (BYTES_BIG_ENDIAN ? 0 : 3);
   operands[8] = gen_rtx_REG (V4SImode, reg_or_subregno (operands[0]));
 }
   [(set_attr "type" "vecperm")
-- 
2.17.1

From-SVN: r262020
2018-06-25 15:43:34 +00:00
Richard Biener
2817a2b6b5 re PR regression/86304 ([MIPS] FAIL: gcc.dg/vect/pr79887.c -mmsa (internal compiler error) starting with r261740)
2018-06-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/86304
	* tree-vectorizer.c (vectorize_loops): Walk over new possibly
	epilogue-if-converted loops as well.

From-SVN: r262017
2018-06-25 13:04:38 +00:00
Jakub Jelinek
af62adb981 re PR target/84786 ([miscompilation] vunpcklpd accessing xmm16-22 targeting KNL)
PR target/84786
	* config/i386/sse.md (vshift_count): New mode attr.
	(<shift_insn><mode>3<mask_name>): Use <vshift_count>N instead of vN
	as last operand's constraint for VI2_AVX2_AVX512BW shifts.  Use YvN
	instead of vN as last operand's constraint for VI48_AVX2 shifts.

	* gcc.target/i386/avx512f-pr84786-3.c: New test.

From-SVN: r262015
2018-06-25 14:57:04 +02:00
Jan Hubicka
aa7c78ca05 lto-section-out.c (lto_begin_section): Do not print section name for noaddr and unnumbered dumps.
* lto-section-out.c (lto_begin_section): Do not print section
	name for noaddr and unnumbered dumps.

From-SVN: r262013
2018-06-25 12:29:45 +00:00
Richard Biener
ca823c8588 tree-vectorizer.h (struct vec_info_shared): New structure with parts split out from struct vec_info and loop_nest from...
2018-06-25  Richard Biener  <rguenther@suse.de>

	* tree-vectorizer.h (struct vec_info_shared): New structure
	with parts split out from struct vec_info and loop_nest from
	struct _loop_vec_info.
	(struct vec_info): Adjust accordingly.
	(struct _loop_vec_info): Likewise.
	(LOOP_VINFO_LOOP_NEST): Adjust.
	(LOOP_VINFO_DATAREFS): Likewise.
	(LOOP_VINFO_DDRS): Likewise.
	(struct _bb_vec_info): Likewise.
	(BB_VINFO_DATAREFS): Likewise.
	(BB_VINFO_DDRS): Likewise.
	(struct _stmt_vec_info): Add dr_aux member.
	(DR_VECT_AUX): Adjust to refer to member of DR_STMTs vinfo.
	(DR_MISALIGNMENT_UNINITIALIZED): New.
	(set_dr_misalignment): Adjust.
	(dr_misalignment): Assert misalign isn't DR_MISALIGNMENT_UNINITIALIZED.
	(vect_analyze_loop): Adjust prototype.
	(vect_analyze_loop_form): Likewise.
	* tree-vect-data-refs.c (vect_analyze_data_ref_dependences):
	Compute dependences lazily.
	(vect_record_base_alignments): Use shared datarefs/ddrs.
	(vect_verify_datarefs_alignment): Likewise.
	(vect_analyze_data_refs_alignment): Likewise.
	(vect_analyze_data_ref_accesses): Likewise.
	(vect_analyze_data_refs): Likewise.
	* tree-vect-loop.c (_loop_vec_info::_loop_vec_info): Add
	constructor parameter for shared part.
	(vect_analyze_loop_form): Pass in shared part and adjust.
	(vect_analyze_loop_2): Pass in storage for the number of
	stmts.  Move loop nest finding to the caller.  Compute
	datarefs lazily.
	(vect_analyze_loop): Pass in shared part.
	(vect_transform_loop): Verify shared datarefs are unchanged.
	* tree-vect-slp.c (_bb_vec_info::_bb_vec_info): Add
	constructor parameter for shared part.
	(vect_slp_analyze_bb_1): Pass in shared part and adjust.
	(vect_slp_bb): Verify shared datarefs are unchanged before
	transform.
	* tree-vect-stmts.c (ensure_base_align): Adjust for DR_AUX
	change.
	(new_stmt_vec_info): Initialize DR_AUX misalignment to
	DR_MISALIGNMENT_UNINITIALIZED.
	* tree-vectorizer.c (vec_info::vec_info): Add constructor
	parameter for shared part.
	(vec_info::~vec_info): Adjust.
	(vec_info_shared::vec_info_shared): New.
	(vec_info_shared::~vec_info_shared): Likewise.
	(vec_info_shared::save_datarefs): Likewise.
	(vec_info_shared::check_datarefs): Likewise.
	(try_vectorize_loop_1): Construct shared part live for analyses
	of a single loop for multiple vector sizes.
	* tree-parloops.c (gather_scalar_reductions): Adjust.

From-SVN: r262009
2018-06-25 11:04:01 +00:00
Richard Biener
f2227a6696 tree-vect-data-refs.c (vect_find_stmt_data_reference): Modify DR for SIMD lane accesses here and mark DR with (void *)-1 aux.
2018-06-25  Richard Biener  <rguenther@suse.de>

	* tree-vect-data-refs.c (vect_find_stmt_data_reference): Modify
	DR for SIMD lane accesses here and mark DR with (void *)-1 aux.
	(vect_analyze_data_refs): Remove similar code from here and
	simplify accordingly.

From-SVN: r262008
2018-06-25 11:02:10 +00:00
Richard Biener
8c9632905d tree-vect-data-refs.c (vect_check_gather_scatter): Fail for reverse storage order accesses rather than asserting they cannot...
2018-06-25  Richard Biener  <rguenther@suse.de>
        Eric Botcazou  <ebotcazou@libertysurf.fr>

	* tree-vect-data-refs.c (vect_check_gather_scatter): Fail
	for reverse storage order accesses rather than asserting
	they cannot happen here.

	* gnat.dg/sso9.adb: New testcase.
	* gnat.dg/sso9_pkg.ads: Likewise.

From-SVN: r262007
2018-06-25 11:01:07 +00:00
Tom de Vries
fd082a66f8 [i386/debug] Fix insn prefix in tls_global_dynamic_64_<mode>
2018-06-25  Tom de Vries  <tdevries@suse.de>

	PR debug/86257
	* config/i386/i386.md (define_insn "*tls_global_dynamic_64_<mode>"):
	Use data16 instead of .byte for insn prefix.

	* gcc.target/i386/pr86257.c: New test.

From-SVN: r262006
2018-06-25 10:39:54 +00:00
Andreas Krebbel
4f1c88ae58 C++: Fix PR86082
When turning a user-defined numerical literal into an operator
invocation the literal needs to be translated to the execution
character set.

gcc/cp/ChangeLog:

2018-06-25  Andreas Krebbel  <krebbel@linux.ibm.com>

	PR C++/86082
	* parser.c (make_char_string_pack): Pass this literal chars
	through cpp_interpret_string.
	(cp_parser_userdef_numeric_literal): Check the result of
	make_char_string_pack.

gcc/testsuite/ChangeLog:

2018-06-25  Andreas Krebbel  <krebbel@linux.ibm.com>

	PR C++/86082
	* g++.dg/pr86082.C: New test.

From-SVN: r262003
2018-06-25 07:16:59 +00:00
GCC Administrator
c5ce6638f4 Daily bump.
From-SVN: r262002
2018-06-25 00:17:04 +00:00
Maya Rashish
9bc6f25db5 stddef.h: Simplify conditions around avoiding re-definition of __size_t.
* ginclude/stddef.h: Simplify conditions around avoiding
	re-definition of __size_t.

From-SVN: r261998
2018-06-24 21:32:40 +00:00
Gerald Pfeifer
1a6d1d2421 libgomp.texi (Top): Move www.openmp.org to https.
* libgomp.texi (Top): Move www.openmp.org to https.
	(Enabling OpenMP): Ditto.
	(omp_get_active_level): Ditto.
	(omp_get_ancestor_thread_num): Ditto.
	(omp_get_cancellation): Ditto.
	(omp_get_default_device): Ditto.
	(omp_get_dynamic): Ditto.
	(omp_get_level): Ditto.
	(omp_get_max_active_levels): Ditto.
	(omp_get_max_task_priority): Ditto.
	(omp_get_max_threads): Ditto.
	(omp_get_nested): Ditto.
	(omp_get_num_devices): Ditto.
	(omp_get_num_procs): Ditto.
	(omp_get_num_teams): Ditto.
	(omp_get_num_threads): Ditto.
	(omp_get_proc_bind): Ditto.
	(omp_get_schedule): Ditto.
	(omp_get_team_num): Ditto.
	(omp_get_team_size): Ditto.
	(omp_get_thread_limit): Ditto.
	(omp_get_thread_num): Ditto.
	(omp_in_parallel): Ditto.
	(omp_in_final): Ditto.
	(omp_is_initial_device): Ditto.
	(omp_set_default_device): Ditto.
	(omp_set_dynamic): Ditto.
	(omp_set_max_active_levels): Ditto.
	(omp_set_nested): Ditto.
	(omp_set_num_threads): Ditto.
	(omp_set_schedule): Ditto.
	(omp_init_lock): Ditto.
	(omp_set_lock): Ditto.
	(omp_test_lock): Ditto.
	(omp_unset_lock): Ditto.
	(omp_destroy_lock): Ditto.
	(omp_init_nest_lock): Ditto.
	(omp_set_nest_lock): Ditto.
	(omp_test_nest_lock): Ditto.
	(omp_unset_nest_lock): Ditto.
	(omp_destroy_nest_lock): Ditto.
	(omp_get_wtick): Ditto.
	(omp_get_wtime): Ditto.
	(OMP_CANCELLATION): Ditto.
	(OMP_DISPLAY_ENV): Ditto.
	(OMP_DEFAULT_DEVICE): Ditto.
	(OMP_DYNAMIC): Ditto.
	(OMP_MAX_ACTIVE_LEVELS): Ditto.
	(OMP_MAX_TASK_PRIORITY): Ditto.
	(OMP_NESTED): Ditto.
	(OMP_NUM_THREADS): Ditto.
	(OMP_PROC_BIND): Ditto.
	(OMP_PLACES): Ditto.
	(OMP_STACKSIZE): Ditto.
	(OMP_SCHEDULE): Ditto.
	(OMP_THREAD_LIMIT): Ditto.
	(OMP_WAIT_POLICY): Ditto.

From-SVN: r261997
2018-06-24 20:38:14 +00:00
Jan Hubicka
6b0917f466 lto-streamer-out.c (tree_is_indexable): Make LABEL_DECL nonindexable unless it is forced or nonlocal...
* lto-streamer-out.c (tree_is_indexable): Make LABEL_DECL nonindexable
	unless it is forced or nonlocal; assert that we stream no IMPORTED_DECL.

From-SVN: r261995
2018-06-24 14:11:55 +00:00
Jerry DeLisle
adaab3058c re PR fortran/85983 (ICE in check_dtio_interface1, at fortran/interface.c:4748)
2018-06-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/85983
	* interface.c (check_dtio_interface1): Delete assert.

From-SVN: r261994
2018-06-24 04:09:20 +00:00
GCC Administrator
c8752e8af8 Daily bump.
From-SVN: r261992
2018-06-24 00:16:33 +00:00
Tom de Vries
bf51586778 [testsuite/guality] Fix tcl error on missing gdb
2018-06-24  Tom de Vries  <tdevries@suse.de>

	* g++.dg/guality/guality.exp: Don't use which on gdb arg to report_gdb.
	* gcc.dg/guality/guality.exp: Same.
	* gfortran.dg/guality/guality.exp: Same.
	* lib/gcc-gdb-test.exp: Do early out if which gdb fails.

From-SVN: r261988
2018-06-23 23:41:51 +00:00
Paolo Carlini
be68f3fa0f decl.c (bad_specifiers): Add const location_t* parameter and use locations in error messages about...
/cp
2018-06-23  Paolo Carlini  <paolo.carlini@oracle.com>

	* decl.c (bad_specifiers): Add const location_t* parameter and
	use locations in error messages about 'inline' and 'virtual'.
	(mark_inline_variable): Add location_t parameter and use it in
	error_at and pedwarn messages.
	(grokdeclarator): Use declspecs->locations[ds_constexpr],
	declspecs->locations[ds_concept], declspecs->locations[ds_virtual],
	declspecs->locations[ds_inline] in many error messages; adjust
	bad_specifiers and mark_inline_variable calls.
	(grokvardecl): Use declspecs->locations[ds_concept] in error message.

/testsuite
2018-06-23  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/concepts/locations1.C: New.
	* g++.dg/cpp0x/locations1.C: Likewise.
	* g++.dg/cpp1z/inline-var2.C: Test locations too.
	* g++.dg/cpp1z/inline-var3.C: Likewise.

From-SVN: r261982
2018-06-23 07:32:45 +00:00
Maya Rashish
9f8a749e91 invoke.texi (mno-fancy-math-387): Update for changes made to OpenBSD and NetBSD through the years.
* doc/invoke.texi (mno-fancy-math-387): Update for changes
        made to OpenBSD and NetBSD through the years.

From-SVN: r261981
2018-06-22 23:05:58 -06:00
Ian Lance Taylor
88d51f7996 runtime: use #ifdef instead of #if for USING_SPLIT_STACK
USING_SPLIT_STACK is configured as defined/undefined, not 0/1.
    Most of the places test USING_SPLIT_STACK with #ifdef, with a
    few exceptions. This CL fixes the exceptions.
    
    Reviewed-on: https://go-review.googlesource.com/120596

From-SVN: r261980
2018-06-23 02:44:36 +00:00
GCC Administrator
a8bd2589e0 Daily bump.
From-SVN: r261979
2018-06-23 00:16:56 +00:00
Paul Thomas
474f253087 re PR fortran/86281 (SEGV in fortran/resolve.c:resolve_function)
2018-06-22  Paul Thomas  <pault@gcc.gnu.org>
	    Rainer Orth  <ro@gcc.gnu.org>

	PR fortran/86281
	* resolve.c (resolve_contained_fntype): Check for the charlen
	before testing the length.

2018-06-22  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/86281
	* gfortran.dg/assumed_charlen_function_7.f90: Add -std=legacy.


Co-Authored-By: Rainer Orth <ro@gcc.gnu.org>

From-SVN: r261975
2018-06-22 22:31:17 +00:00
Kelvin Nilsen
9395b1d99f rs6000-c.c (altivec_overloaded_builtins): Change behavior of vec_pack (vector double...
gcc/ChangeLog:

2018-06-22  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Change
	behavior of vec_pack (vector double, vector double) to match
	behavior of vec_float2 (vector double, vector double).

gcc/testsuite/ChangeLog:

2018-06-22  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* gcc.target/powerpc/builtins-3-p8.c (test_pack_float): Remove
	this test.
	* gcc.target/powerpc/builtins-9.c: New test.
	* gcc.target/powerpc/fold-vec-pack-double.c: Modify dg directives
	to expect different code generation on big-endian vs.
	little-endian targets.

From-SVN: r261974
2018-06-22 22:28:49 +00:00
Jason Merrill
e56f662950 PR c++/86219 - ICE with erroneous initializer in template.
* constexpr.c (fold_non_dependent_expr): Add complain parm.
	* call.c, expr.c, init.c, pt.c, semantics.c, typeck.c, typeck2.c:
	Pass it.
	* call.c (build_cxx_call): Don't mess with builtins in a template.
	* typeck2.c (store_init_value): If fold_non_dependent_expr didn't
	produce a constant value, go back to the uninstantiated form.

From-SVN: r261972
2018-06-22 17:57:07 -04:00
Jason Merrill
e4511ca2e9 Avoid taking the address of something just because it's in parens.
* constexpr.c (same_type_ignoring_tlq_and_bounds_p): New.
	(cxx_fold_indirect_ref): Use it.
	(cxx_eval_constant_expression) [VIEW_CONVERT_EXPR]: Use it.
	* cp-tree.h (REF_PARENTHESIZED_P): Allow VIEW_CONVERT_EXPR.
	* semantics.c (force_paren_expr): Use VIEW_CONVERT_EXPR instead of
	static_cast to reference type.
	(maybe_undo_parenthesized_ref): Handle VIEW_CONVERT_EXPR.

From-SVN: r261971
2018-06-22 17:57:01 -04:00
Tom de Vries
73607ff9ec [testsuite/guality] Use buildarea gdb by default in combined build
2018-06-22  Tom de Vries  <tdevries@suse.de>

	* g++.dg/guality/guality.exp (guality_gdb_name): Default to
	$rootme/../gdb/gdb, if available.
	* gcc.dg/guality/guality.exp (guality_gdb_name): Same.
	* gfortran.dg/guality/guality.exp (guality_gdb_name): Same.

From-SVN: r261935
2018-06-22 20:56:08 +00:00
Tom de Vries
be56f2c473 [testsuite/guality] Be verbose about gdb version used
2018-06-22  Tom de Vries  <tdevries@suse.de>

	* lib/gcc-gdb-test.exp (report_gdb): New proc.
	* g++.dg/guality/guality.exp: Use report_gdb.
	* gcc.dg/guality/guality.exp: Same.
	* gfortran.dg/guality/guality.exp: Same.

From-SVN: r261911
2018-06-22 19:50:03 +00:00
Jakub Jelinek
7017d4a2d1 re PR c++/85662 ("error: non-constant condition for static assertion" from __builtin_offsetof in C++)
PR c++/85662
	* g++.dg/ext/offsetof3.C: New test.

From-SVN: r261909
2018-06-22 19:22:43 +02:00
Olivier Hainque
0fb6181ed9 Improve entry/exit instrumentation for nested functions
2018-06-22  Olivier Hainque  <hainque@adacore.com>

	* gimplify.c (gimplify_function_tree): Prevent creation
	of a trampoline for the address of the current function
	passed to entry/exit instrumentation hooks.

From-SVN: r261908
2018-06-22 16:46:22 +00:00
Aaron Sawdey
3f14cdf84a Forgot PR target/86222 in ChangeLog
From-SVN: r261906
2018-06-22 10:37:36 -05:00
Aaron Sawdey
e9727bda05 rs6000-string.c (expand_strn_compare): Handle -m32 correctly.
2018-06-22  Aaron Sawdey  <acsawdey@linux.ibm.com>

	* config/rs6000/rs6000-string.c (expand_strn_compare): Handle -m32
	correctly.

From-SVN: r261905
2018-06-22 10:36:31 -05:00
Carl Love
84ee432143 altivec-7.c: Add qualifiers for counts on AIX versus Linux.
gcc/testsuite/ChangeLog:

2018-06-22  Carl Love  <cel@us.ibm.com>

 	* gcc.target/powerpc/altivec-7.c: Add qualifiers for counts on AIX
	versus Linux.  Change checks for xxlnor, xxland and xxlxor to also look
	for the vnor, vand and vxor instructions.
	* gcc.target/powerpc/builtins-1.c: Move vec_or tests to a new file.
	Remove counts for xxlor. Fix match on bl __divdi3 and bl __udivdi3.
	* gcc.target/powerpc/builtins-4.c: Fix matching for vsl instructions.
	* gcc.target/powerpc/builtins-5.c: New test file for vec_or test cases.
 	* gcc.target/powerpc/vsx-vector-6.p7.c: Fix xxlnor BE expected count.
	Add -dp to dg-options, update expected counts.

From-SVN: r261904
2018-06-22 15:01:34 +00:00
Paul Koning
7393e5de78 Fix test case failures for pdp11 target.
* gcc.c-torture/execute/builtins/lib/chk.c: Use smaller alignment
	if pdp11.
	* gcc.c-torture/compile/20010518-2.c: Skip if pdp11 -mint32.
	* gcc.c-torture/compile/20040101-1.c: Ditto.
	* gcc.c-torture/compile/20050622-1.c: Ditto.
	* gcc.c-torture/compile/20080625-1.c: Ditto.
	* gcc.c-torture/compile/20090107-1.c: Ditto.
	* gcc.c-torture/compile/920501-12.c: Ditto.
	* gcc.c-torture/compile/920501-4.c: Ditto.
	* gcc.c-torture/compile/961203-1.c: Ditto.
	* gcc.c-torture/compile/limits-externdecl.c: Ditto.
	* gcc.c-torture/compile/pr25310.c: Ditto.

From-SVN: r261897
2018-06-22 10:34:37 -04:00
Ian Lance Taylor
38a4d6da17 syscall: remove Ustat
glibc 2.28 removes ustat.h and the ustat function entirely, which
    breaks syscall.Ustat.
    
    Updates golang/go#25990
    
    Reviewed-on: https://go-review.googlesource.com/120535

From-SVN: r261896
2018-06-22 14:25:52 +00:00
Jonathan Wakely
626d407be8 Fix unexported basic_string symbols for 32-bit targets
* config/abi/pre/gnu.ver: Fix __cxx11::basic_string patterns for
	different size_t mangling on 32-bit targets.

From-SVN: r261892
2018-06-22 15:19:12 +01:00
Jonathan Wakely
0b4bc9a1e8 PR libstdc++/86280 fix undefined left shift on 32-bit targets
PR libstdc++/86280
	* include/experimental/memory_resource
	(__resource_adaptor_common::_AlignMgr::_M_token_size): Use type large
	enough for result of left shift.

From-SVN: r261888
2018-06-22 14:05:20 +01:00
Martin Liska
5885a1bd53 Fix emission of jump tables (PR tree-optimization/86263).
2018-06-22  Martin Liska  <mliska@suse.cz>

        PR tree-optimization/86263
	* tree-switch-conversion.c (jump_table_cluster::find_jump_tables):
        Bail out if is_enabled is false.
	* tree-switch-conversion.h (jump_table_cluster::is_enabled):
        New declaration.
	(jump_table_cluster::is_enabled): New function.

From-SVN: r261886
2018-06-22 11:32:20 +00:00
Jan Hubicka
0c172706f4 lto-streamer-out.c (DFS::DFS_write_tree_body): Do not stream BINFO_BASE_ACCESSES and BINFO_VPTR_FIELD.
* lto-streamer-out.c (DFS::DFS_write_tree_body): Do not stream
	BINFO_BASE_ACCESSES and BINFO_VPTR_FIELD.
	* tree-streamer-in.c (streamer_read_tree_bitfields): Likewise.
	(lto_input_ts_binfo_tree_pointers): Likewise.
	* tree-streamer-out.c (streamer_write_tree_bitfields,
	write_ts_binfo_tree_pointers): Likewise.
	* tree.c (free_lang_data_in_binfo): Clear BINFO_VPTR_FIELD.

From-SVN: r261885
2018-06-22 10:09:10 +00:00
Cesar Philippidis
31dd69b7ff Update OpenACC testcases
gcc/testsuite/
	* c-c++-common/goacc/deviceptr-4.c: New file.
	* c-c++-common/goacc/kernels-counter-var-redundant-load.c:
	Likewise.
	* c-c++-common/goacc/kernels-loop-data-2.c: Likewise.
	* c-c++-common/goacc/kernels-loop-data-enter-exit-2.c: Likewise.
	* c-c++-common/goacc/kernels-loop-data-enter-exit.c: Likewise.
	* c-c++-common/goacc/kernels-loop-data-update.c: Likewise.
	* c-c++-common/goacc/kernels-loop-data.c: Likewise.
	* c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c:
	Likewise.
	* c-c++-common/goacc/parallel-reduction.c: Likewise.
	* c-c++-common/goacc/private-reduction-1.c: Likewise.
	* gfortran.dg/goacc/kernels-parallel-loop-data-enter-exit.f95:
	Likewise.
	* gfortran.dg/goacc/modules.f95: Likewise.
	* gfortran.dg/goacc/routine-8.f90: Likewise.
	* gfortran.dg/goacc/routine-level-of-parallelism-1.f90: Likewise.
	libgomp/
	* testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Don't force "-O2".
	* testsuite/libgomp.oacc-c-c++-common/data-2.c: Update.
	* testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Likewise.
	* testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
	* testsuite/libgomp.oacc-c++/non-scalar-data.C: New file.
	* testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/enter-data.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
	Likewise.
	* testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.h: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/parallel-loop-2.h: Likewise.
	* testsuite/libgomp.oacc-fortran/cublas-fixed.h: Likewise.
	* testsuite/libgomp.oacc-fortran/dummy-array.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
	* testsuite/libgomp.oacc-fortran/host_data-4.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-independent.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
	Likewise.
	* testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/lib-13.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/lib-15.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/parallel-loop-1.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/reference-reductions.f90: Likewise.
	* testsuite/libgomp.oacc-fortran/vector-routine.f90: Likewise.

Co-Authored-By: James Norris <jnorris@codesourcery.com>
Co-Authored-By: Julian Brown <julian@codesourcery.com>
Co-Authored-By: Thomas Schwinge <thomas@codesourcery.com>
Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r261884
2018-06-22 12:04:14 +02:00
Jan Hubicka
ebbb116851 * tree.c (free_lang_data_in_type): Free all TYPE_VFIELDs.
From-SVN: r261883
2018-06-22 09:45:54 +00:00
Martin Liska
e08bf12576 Make symbol_summary::get and call_summary::get pure.
2018-06-22  Martin Liska  <mliska@suse.cz>

	* symbol-summary.h (get): Make it pure and inline move
        functionality from ::get function.
        (get): Remove and inline into ::get and ::get_create.
        (get_create): Move code from ::get function.

From-SVN: r261882
2018-06-22 08:56:18 +00:00
Rainer Orth
635b738209 Don't preprocess .S files with -P on Solaris/x86 (PR target/85994)
PR target/85994
	* config/i386/sol2.h (CPP_SPEC): Don't pass -P for
	-x assembler-with-cpp.

From-SVN: r261880
2018-06-22 06:19:14 +00:00
Rainer Orth
a634048e19 Have g++ define _FILE_OFFSET_BITS=64 on Solaris
* config/sol2.h (TARGET_OS_CPP_BUILTINS): Define
	_FILE_OFFSET_BITS=64 for C++.

From-SVN: r261879
2018-06-22 06:16:00 +00:00
François Dumont
89de39a98f 2018-06-21 François Dumont <fdumont@gcc.gnu.org>
Fix this ChangeLog entry.

From-SVN: r261878
2018-06-22 05:23:47 +00:00
GCC Administrator
f76e076802 Daily bump.
From-SVN: r261877
2018-06-22 00:16:44 +00:00
Jonathan Wakely
d72888d340 PR libstdc++/86138 prevent implicit instantiation of COW empty rep
The explicit instantiation declarations for std::basic_string are
disabled for C++17 (and later) so that basic_string symbols get
implicitly instantiated in every translation unit that needs them.  On
targets that don't support STB_GNU_UNIQUE this leads to multiple copies
of the empty rep symbol for COW strings. In order to detect whether a
COW string needs to deallocate its storage it compares the address with
the empty rep.  When there are multiple copies of the empty rep object
the address is not unique, and so string destructors try to delete the
empty rep, which crashes.

In order to guarantee uniqueness of the _S_empty_rep_storage symbol this
patch adds an explicit instantiation declaration for just that symbol.
This means the other symbols are still implicitly instantiated in C++17
code, but for the empty rep the definition in the library gets used.

Separately, there is no need for C++17 code to implicitly instantiate
the I/O functions for strings, so this also restores the explicit
instantiation declarations for those functions.

	PR libstdc++/86138
	* include/bits/basic_string.tcc:
	[__cplusplus > 201402 && !_GLIBCXX_USE_CXX11_ABI]
	(basic_string<char>::_Rep::_S_empty_rep_storage)
	(basic_string<wchar_t>::_Rep::_S_empty_rep_storage): Add explicit
	instantiation declarations.
	[__cplusplus > 201402] (operator>>, operator<<, getline): Re-enable
	explicit instantiation declarations.
	* testsuite/21_strings/basic_string/cons/char/86138.cc: New.
	* testsuite/21_strings/basic_string/cons/wchar_t/86138.cc: New.

From-SVN: r261873
2018-06-22 00:29:01 +01:00
Michael Meissner
30043df975 pack02.c: Use __ibm128 instead of long double if the long double format is IEEE 128-bit...
2018-06-21  Michael Meissner  <meissner@linux.ibm.com>

	* gcc.target/powerpc/pack02.c: Use __ibm128 instead of long double
	if the long double format is IEEE 128-bit for tests that are
	explicitly testing IBM extended double support.  Use the
	appropriate pack and unpack built-in functions.  Change calls from
	__builtin_isinfl to __builtin_isinf since the later supports all
	floating point types.
	* gcc.target/powerpc/pr57150.c: Likewise.
	* gcc.target/powerpc/pr60203.c: Likewise.
	* gcc.target/powerpc/pr67808.c: Likewise.
	* gcc.target/powerpc/pr70117.c: Likewise.
	* gcc.target/powerpc/tfmode_off.c: Likewise.

From-SVN: r261872
2018-06-21 23:13:25 +00:00
Ian Lance Taylor
27fbc519e0 cmd/go: re-enable a couple of tests of gccgo
Port https://golang.org/cl/120375 over to the gofrontend repo so that
    it gets more reliable testing.
    
    Updates golang/go#22472
    
    Reviewed-on: https://go-review.googlesource.com/120395

From-SVN: r261871
2018-06-21 23:02:25 +00:00
Michael Meissner
ed044066ac rs6000.c (init_float128_ieee): Prevent complex multiply and divide external functions from being created more...
2018-06-23  Michael Meissner  <meissner@linux.ibm.com>

	* config/rs6000/rs6000.c (init_float128_ieee): Prevent complex
	multiply and divide external functions from being created more
	than once.

From-SVN: r261870
2018-06-21 22:55:50 +00:00
Michael Meissner
e8ccf82411 rs6000.md (neg<mode>2_internal): Use the correct mode to check whether the mode is IBM extended.
2018-06-21  Michael Meissner  <meissner@linux.ibm.com>

	* config/rs6000/rs6000.md (neg<mode>2_internal): Use the correct
	mode to check whether the mode is IBM extended.

From-SVN: r261869
2018-06-21 22:49:37 +00:00