Commit Graph

145202 Commits

Author SHA1 Message Date
Martin Sebor
342fac9537 PR c++/69517 - [5/6 regression] SEGV on a VLA with excess initializer elements
PR c++/69517 - [5/6 regression] SEGV on a VLA with excess initializer elements
PR c++/70019 - VLA size overflow not detected
PR c++/70588 - SIGBUS on a VLA larger than SIZE_MAX / 2

gcc/testsuite/ChangeLog:
2016-04-13  Martin Sebor  <msebor@redhat.com>

        PR c++/69517
        PR c++/70019
        PR c++/70588
        * c-c++-common/ubsan/vla-1.c (main): Catch exceptions.
        * g++.dg/cpp1y/vla11.C: New test.
        * g++.dg/cpp1y/vla12.C: New test.
        * g++.dg/cpp1y/vla13.C: New test.
        * g++.dg/cpp1y/vla14.C: New test.
        * g++.dg/cpp1y/vla3.C: Restore deleted test.
        * gcc/testsuite/g++.dg/init/array24.C: Fully brace VLA initializer.
        * g++.dg/ubsan/vla-1.C: Disable exceptions.

gcc/cp/ChangeLog:
2016-04-13  Martin Sebor  <msebor@redhat.com>

        PR c++/69517
        PR c++/70019
        PR c++/70588
        * cp-tree.h (throw_bad_array_length, build_vla_check): Declare new
        functions.
        * decl.c (check_initializer, cp_finish_decl): Call them.
        (reshape_init_r): Reject incompletely braced intializer-lists
        for VLAs.
        * init.c (throw_bad_array_length, build_vla_check)
        (build_vla_size_check, build_vla_init_check): Define new functions.
        * typeck2.c (split_nonconstant_init_1): Use variably_modified_type_p()
        to detect a VLA.
        (store_init_value): Same.

gcc/doc/ChangeLog:
2016-04-13  Martin Sebor  <msebor@redhat.com>

        PR c++/69517
        PR c++/70019
        PR c++/70588
        * extend.texi (Variable Length): Document C++ specifics.

libstdc++-v3/ChangeLog:
2016-04-13  Martin Sebor  <msebor@redhat.com>

        PR c++/69517
        * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
       upper bound is positive.

From-SVN: r234966
2016-04-13 17:26:41 -06:00
Martin Sebor
2ecc0c837b check_GNU_style.sh: Avoid false posivies in trailing operator checks.
From-SVN: r234965
2016-04-13 16:05:30 -06:00
Jonathan Wakely
a6297ab587 Adjust for new empty class parameter passing ABI.
* include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
	_GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
	* include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
	of functions taking empty structs by value. Add a template parameter
	to overloads without hints. Rename overloads with hints to
	_M_emplace_hint.
	(_Hashtable::_M_erase(true_type, const_iterator),
	_Hashtable::_M_erase(false_type, const_iterator)): Change signatures
	by reordering parameters.
	* include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
	_M_emplace_hint instead of _M_emplace.
	* include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
	shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
	* include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
	__shared_ptr): Likewise.
	* include/bits/stl_algo.h (replace_if): Likewise.
	* include/bits/stl_pair.h (piecewise_construct_t,
	piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
	* include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
	__uses_alloc0): Likewise.
	* include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
	* testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
	* testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
	* testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
	* testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.

From-SVN: r234964
2016-04-13 23:00:50 +01:00
Jakub Jelinek
d93c452f18 re PR c++/70641 (ICE on valid code at -O1 and above on x86_64-linux-gnu: verify_gimple failed)
PR c++/70641
	* ipa-pure-const.c (pass_nothrow::execute): Call maybe_clean_eh_stmt
	on all recursive call stmts.  Return TODO_cleanup_cfg if any dead
	eh edges have been purged.

	* g++.dg/opt/pr70641.C: New test.

From-SVN: r234962
2016-04-13 22:43:10 +02:00
Jakub Jelinek
5f36c869a5 re PR c++/70594 (-fcompare-debug failure)
PR c++/70594
	* tree-sra.c (create_access_replacement,
	get_replaced_param_substitute): Set DECL_NAMELESS on repl if it
	gets fancy name.
	* tree-pretty-print.c (dump_fancy_name): New function.
	(dump_decl_name, dump_generic_node): Use it.

From-SVN: r234961
2016-04-13 22:35:59 +02:00
Jason Merrill
2ee35bea2e Warn about empty parameter ABI with -Wabi=9.
* call.c (empty_class_msg, mark_for_abi_warning)
	(warn_empty_class_abi): New.
	(build_call_a): Use them.
	* decl.c (store_parm_decls): Use mark_for_abi_warning.
	* error.c (pp_format_to_string): New.

From-SVN: r234960
2016-04-13 16:11:29 -04:00
Jason Merrill
5655267ca1 Pass empty class parameters like C.
* call.c (pass_as_empty_struct, empty_class_arg): New.
	(type_passed_as, build_x_va_arg): Use pass_as_empty_struct.
	(build_call_a): Use empty_class_arg.
	* cp-tree.h (CPTI_EMPTY_STRUCT, empty_struct_type): New.
	* decl.c (cxx_init_decl_processing): Create empty_struct_type.

From-SVN: r234959
2016-04-13 16:11:20 -04:00
Ian Lance Taylor
88b5d499b5 libgo: update to Go 1.6.1 release
Reviewed-on: https://go-review.googlesource.com/22007

From-SVN: r234958
2016-04-13 19:11:16 +00:00
Cesar Philippidis
10c3c4245b re PR testsuite/68242 (FAIL: libgomp.oacc-c-c++-common/reduction-2.c, and other OpenACC reduction test case "oddities")
libgomp/
	PR testsuite/68242
	* testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Adjust test.
	* testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.

From-SVN: r234957
2016-04-13 11:54:41 -07:00
Jason Merrill
0d9cdbdd7a re PR c++/70627 (internal compiler error: verify_type failed)
PR c++/70627

	* decl.c (start_enum): Don't change an existing ENUM_UNDERLYING_TYPE.

From-SVN: r234956
2016-04-13 14:32:11 -04:00
Rainer Orth
85115fb632 Fix gcc.dg/ifcvt-4.c on 64-bit SPARC (PR rtl-optimization/68749)
PR rtl-optimization/68749
	* gcc.dg/ifcvt-4.c: Use "word_mode" rather than "int" to limit the
	effects of argument promotions.
	Remove default args to dg-skip-if.

From-SVN: r234955
2016-04-13 18:13:31 +00:00
Segher Boessenkool
f3653cf5bb Make distclean clean up more (PR70173)
Currently, distclean does not remove the libcc1, gnattools, and gotools
directories, and not the stage_final file either.  Fix that.


	PR bootstrap/70173
	* Makefile.tpl (local-distclean): Delete the libcc1, gnattools,
	and gotools directories.  Delete the stage_final file.
	* Makefile.in: Regenerate.

From-SVN: r234954
2016-04-13 20:02:08 +02:00
Paolo Carlini
545a4139d5 re PR c++/70635 (ICE on (and rejects) valid code on x86_64-linux-gnu: Segmentation fault (program cc1plus))
/cp
2016-04-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/70635
	* pt.c (resolve_typename_type): Fix typos in infinite recursion
	avoidance mechanism.

/testsuite
2016-04-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/70635
	* g++.dg/parse/pr70635.C: New.

From-SVN: r234953
2016-04-13 17:11:03 +00:00
Marek Polacek
b3a77f2137 re PR c++/70639 (internal compiler error: in guard_tinfo_to_string, at c-family/c-indentation.c:560)
PR c++/70639
	* c-indentation.c (should_warn_for_misleading_indentation): Bail out
	for switch statements, too.

	* c-c++-common/Wmisleading-indentation-4.c: New test.

From-SVN: r234952
2016-04-13 16:28:46 +00:00
Marek Polacek
99cd9857c0 re PR c/70436 (-Wparentheses missing ambiguous else warning)
PR c/70436
	* c-parser.c (c_parser_statement_after_labels): Add IF_P argument and
	adjust callers.
	(c_parser_statement): Likewise.
	(c_parser_c99_block_statement): Likewise.
	(c_parser_while_statement): Likewise.
	(c_parser_for_statement): Likewise.
	(c_parser_if_body): Don't set IF_P here.
	(c_parser_if_statement): Add IF_P argument.  Set IF_P here.  Warn
	about dangling else here.
	* c-tree.h (c_finish_if_stmt): Adjust declaration.
	* c-typeck.c (c_finish_if_stmt): Remove NESTED_IF parameter.  Don't
	warn about dangling else here.

	* testsuite/gcc.dg/Wparentheses-12.c: New test.
	* testsuite/gcc.dg/Wparentheses-13.c: New test.

From-SVN: r234949
2016-04-13 16:00:52 +00:00
Dominique d'Humieres
5267cfcc82 re PR fortran/67039 (Documentation of pseudorandom number intrinsics is incorrect)
2016-04-13  Dominique d'Humieres  <dominiq@lps.ens.fr>

	PR fortran/67039
	* intrinsic.texi: Correct the documentation of pseudorandom
	number intrinsics.

From-SVN: r234946
2016-04-13 17:04:57 +02:00
Jason Merrill
463d91c64d re PR c++/70634 (ICE on valid code on x86_64-linux-gnu: Segmentation fault (program cc1plus))
PR c++/70634

	* pt.c (instantiation_dependent_uneval_expression_p): Split out
	from instantiation_dependent_expression_p.
	(value_dependent_expression_p): Use it for unevaluated operands.
	(instantiation_dependent_r): Don't check value-dependence.
	(instantiation_dependent_expression_p): Check
	value-dependence of the expression as a whole.
	* cp-tree.h: Declare instantiation_dependent_uneval_expression_p.
	* semantics.c (finish_decltype_type): Use it.

From-SVN: r234945
2016-04-13 11:02:23 -04:00
Jason Merrill
eb07f187a4 constexpr.c (potential_nondependent_constant_expression): New.
* constexpr.c (potential_nondependent_constant_expression): New.
	(potential_nondependent_static_init_expression): New.
	(maybe_constant_value_1, fold_non_dependent_expr)
	(maybe_constant_init): Use them.
	* pt.c (instantiate_non_dependent_expr_sfinae)
	(instantiate_non_dependent_or_null, convert_nontype_argument): Use
	them.
	* cp-tree.h: Declare them.

From-SVN: r234944
2016-04-13 11:02:17 -04:00
Jakub Jelinek
3eddc1c971 re PR c++/70594 (-fcompare-debug failure)
PR c++/70594
	* decl.c (pop_labels_1): Removed.
	(note_label, sort_labels): New functions.
	(pop_labels): During named_labels traversal, just push the slot
	pointers into a vector, then qsort it by DECL_UID and only then
	call pop_label and chain it into BLOCK_VARS.

From-SVN: r234942
2016-04-13 16:45:46 +02:00
Jason Merrill
9d4099343a re PR c++/70615 (ICE on valid code at -O1 and above on x86_64-linux-gnu in add_expr, at tree.c:7870)
PR c++/70615
	* cp-gimplify.c (cp_genericize_r): Expand PTRMEM_CST here.
	(cp_gimplify_expr): Not here.

From-SVN: r234940
2016-04-13 10:33:53 -04:00
Ilya Enkovich
75ca93ec9a i386.md (kunpckhi): Swap operands.
gcc/

	* config/i386/i386.md (kunpckhi): Swap operands.
	(kunpcksi): Likewise.
	(kunpckdi): Likewise.
	* config/i386/sse.md (vec_pack_trunc_qi): Likewise.
	(vec_pack_trunc_<mode>): Likewise.

gcc/testsuite/

	* gcc.target/i386/avx512bw-kunpckdq-2.c: New test.
	* gcc.target/i386/avx512bw-kunpckwd-2.c: New test.
	* gcc.target/i386/avx512f-kunpckbw-2.c: New test.

From-SVN: r234938
2016-04-13 14:00:42 +00:00
Jakub Jelinek
b88990be30 re PR debug/70628 (ICE in get_reg_rtx, at emit-rtl.c:1025)
PR debug/70628
	* explow.c (convert_memory_address_addr_space_1): Formatting fix.

From-SVN: r234937
2016-04-13 15:57:29 +02:00
Dominique d'Humieres
042c836476 re PR fortran/58000 (Accept OPEN( ... NAME=) with -std=legacy)
2016-04-13  Dominique d'Humieres  <dominiq@lps.ens.fr>

	PR fortran/58000
	* gfortran.texi: Document OPEN( ... NAME=) as not implemented
	in GNU Fortran

From-SVN: r234936
2016-04-13 15:17:45 +02:00
Jakub Jelinek
37947cd0bd re PR target/70633 (ICE on valid code at -Os (in 32-bit mode) on x86_64-linux-gnu: output_operand: invalid expression as operand)
PR middle-end/70633
	* gimplify.c (gimplify_init_constructor): Clear TREE_STATIC if
	gimplification turns some element into non-constant.

	* gcc.c-torture/compile/pr70633.c: New test.

From-SVN: r234934
2016-04-13 14:27:52 +02:00
Jakub Jelinek
3d3f9e7e69 re PR debug/70628 (ICE in get_reg_rtx, at emit-rtl.c:1025)
PR debug/70628
	* rtl.h (convert_memory_address_addr_space_1): New prototype.
	* explow.c (convert_memory_address_addr_space_1): No longer static,
	add NO_EMIT argument and don't call convert_modes if true, pass
	it down recursively, remove break after return.
	(convert_memory_address_addr_space): Adjust caller.
	* simplify-rtx.c (simplify_unary_operation_1): Call
	convert_memory_address_addr_space_1 instead of convert_memory_address,
	if it returns NULL, don't simplify.

	* gcc.dg/torture/pr70628.c: New test.

From-SVN: r234933
2016-04-13 14:26:26 +02:00
Bernd Schmidt
12de224542 re PR preprocessor/69650 (ICE in linemap_line_start, at libcpp/line-map.c:803)
Patch from Roger Orr <rogero@howzatt.demon.co.uk>
	PR preprocessor/69650
	* directives.c (do_linemarker): Reread map after calling
	cpp_get_token.

From-SVN: r234932
2016-04-13 11:40:37 +00:00
GCC Administrator
abdb7e1568 Daily bump.
From-SVN: r234929
2016-04-13 00:16:15 +00:00
Patrick Palka
92886d3e86 Fix PR c++/70610 (wrong overload resolution during template processing)
gcc/cp/ChangeLog:

	PR c++/70610
	* tree.c (lvalue_kind) [NON_DEPENDENT_EXPR]: Unconditionally
	recurse into it.
	* typeck.c (build_x_conditional_expr): Unconditionally remember
	that the result is an lvalue or xvalue.

gcc/testsuite/ChangeLog:

	PR c++/70610
	* g++.dg/template/pr70610.C: New test.
	* g++.dg/template/pr70610-2.C: New test.
	* g++.dg/template/pr70610-3.C: New test.
	* g++.dg/template/pr70610-4.C: New test.

From-SVN: r234926
2016-04-13 00:06:51 +00:00
Ian Lance Taylor
d90936ff88 reflect: change Value.Call results to not be addressable
Leaving them incorrectly marked as addressable broke a use of the
    text/template package, because state.evalField checks CanAddr and takes
    the address if it is addressable.
    
    Reviewed-on: https://go-review.googlesource.com/21908

From-SVN: r234923
2016-04-12 22:20:30 +00:00
Michael Meissner
8a434ada27 Fix ChangeLog bug id to be 70640, not 70680
From-SVN: r234922
2016-04-12 21:06:47 +00:00
Eric Botcazou
5445cf2af1 re PR target/70630 (sparc bootstrap failure: sparc.c:4919:6: error: suggest explicit braces to avoid ambiguous 'else')
2016-04-12  Eric Botcazou  <ebotcazou@adacore.com>

	PR target/70630
	* config/sparc/sparc.c (sparc_compute_frame_size): Add parentheses.

From-SVN: r234918
2016-04-12 20:55:05 +00:00
Jason Merrill
08d6d8bb00 class.c (is_really_empty_class): A zero-length array is empty.
* class.c (is_really_empty_class): A zero-length array is empty.
	An unnamed bit-field doesn't make a class non-empty.

From-SVN: r234916
2016-04-12 16:28:40 -04:00
Jakub Jelinek
6512fa6dc0 i386.c (ix86_simd_clone_compute_vecsize_and_simdlen): Bump the upper SIMDLEN limits...
* config/i386/i386.c (ix86_simd_clone_compute_vecsize_and_simdlen):
	Bump the upper SIMDLEN limits, so that if the return type or
	characteristic type if the return type is void can be passed in
	all available SSE2/AVX/AVX2/AVX512-F registers, the SIMDLEN is
	allowed.

	* c-c++-common/cilk-plus/SE/ef_error2.c (func2): Use vectorlength
	128 instead of 32.

From-SVN: r234913
2016-04-12 21:37:21 +02:00
Jakub Jelinek
13bd7c2bc5 re PR c++/70571 (ICE on valid code on x86_64-linux-gnu in verify_ctor_sanity, at cp/constexpr.c:2259)
PR c++/70571
	* g++.dg/ext/pr70571.C: New test.

From-SVN: r234911
2016-04-12 21:35:23 +02:00
Michael Meissner
20b9851c46 re PR middle-end/70680 (OpenMP SIMD linear variable privatized too eagerly)
[gcc]
2016-04-12  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/70680
	* config/rs6000/rs6000.md (ieee_128bit_vsx_neg<mode>2_internal):
	Do not use "=" constraint on an input constraint.
	(ieee_128bit_vsx_abs<mode>2_internal): Likewise.
	(ieee_128bit_vsx_nabs<mode>2_internal): Likewise.
	(ieee_128bit_vsx_nabs<mode>2): Correct splitter so that it
	generates (neg (abs ...)) instead of (abs ...).

[gcc/testsuite]
2016-04-12  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/70680
	* gcc.target/powerpc/pr70640.c: New test.

From-SVN: r234910
2016-04-12 19:25:56 +00:00
Paolo Carlini
2b2f52bccf re PR c++/68722 (internal compiler error: in merge_exception_specifiers, at cp/typeck2.c:2108)
/cp
2016-04-12  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/68722
	* parser.c (cp_parser_cache_defarg): When file ends in default
	argument simply return error_mark_node.

/testsuite
2016-04-12  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/68722
	* g++.dg/parse/pr68722.C: New.

From-SVN: r234909
2016-04-12 17:54:34 +00:00
Jakub Jelinek
5901e56ab0 re PR rtl-optimization/70596 (-fcompare-debug failure with one extra NOTE_INSN_DELETED)
PR rtl-optimization/70596
	* lra-spills.c (spill_pseudos): Don't delete debug insns, instead
	just invalidate LRA data and reset them.  Adjust dump wording.

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

From-SVN: r234906
2016-04-12 19:18:31 +02:00
Edward Smith-Rowland
0c39f36dc5 Document C++17/TR29124 C++ Special Math Functions.
2016-04-12  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Document C++17/TR29124 C++ Special Math Functions.
	* include/bits/specfun.h: Add Doxygen markup.

From-SVN: r234905
2016-04-12 16:31:25 +00:00
Nathan Sidwell
d4619dc11e re PR c++/70501 (internal compiler error: in verify_ctor_sanity, at cp/constexpr.c:2249)
PR c++/70501

	cp/
	* constexpr.c (cxx_eval_bare_aggregate): Handle VECTOR_TYPE
	similarly to PMF.

	testsuite/
	* g++.dg/init/pr70501.C: New.

From-SVN: r234904
2016-04-12 16:24:11 +00:00
Andre Vieira
4f93efa4c5 MAINTAINERS (Write After Approval): Add myself.
2016-04-12  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r234903
2016-04-12 13:51:40 +00:00
Martin Liska
3e43b79cce Revert r234572 (aka PR testsuite/70577)
Revert
	2016-03-30  Jan Hubicka  <hubicka@ucw.cz>

	* tree-ssa-loop-niter.c (idx_infer_loop_bounds): We can't get realistic
	estimates here.
	* tree-ssa-loop-unswitch.c (tree_unswitch_single_loop): Use also
	max_loop_iterations_int.
	(tree_unswitch_outer_loop): Likewise.
	* tree-ssa-loop-ivopts.c (avg_loop_niter): Likewise.
	* tree-vect-loop.c (vect_analyze_loop_2): Likewise.

From-SVN: r234902
2016-04-12 13:38:46 +00:00
Thomas Schwinge
58d32aeba5 libgomp external ABI prototypes maintenance
libgomp/
	* libgomp_g.h: Rename GOACC_parallel_keyd prototype to
	GOACC_parallel_keyed, restore GOACC_parallel prototype, new
	GOACC_declare prototype.

From-SVN: r234901
2016-04-12 15:13:53 +02:00
David Wohlferd
3df530d3df Executable test case for asm flags, by David Wohlferd.
* gcc.target/i386/asm-flag-6.c: New test.

From-SVN: r234900
2016-04-12 13:04:44 +00:00
Thomas Schwinge
d97633ef65 Merge libgomp.oacc-c-c++-common/loop-reduction-*.c into libgomp.oacc-c-c++-common/reduction-7.c
libgomp/
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c:
	Merge this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gv-np-1.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c:
	... this file, and...
	* testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c:
	... this file into...
	* testsuite/libgomp.oacc-c-c++-common/reduction-7.c: ... this
	file.

From-SVN: r234899
2016-04-12 13:02:32 +02:00
Thomas Schwinge
27f9add31b Improve libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c
libgomp/
	* testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
	Make failure observable.

From-SVN: r234897
2016-04-12 12:40:22 +02:00
Tom de Vries
b7a120d7a8 Fix typo in copy_cond_phi_args
2016-04-12  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/68756
	* graphite-isl-ast-to-gimple.c (copy_cond_phi_args): Use new_expr
	instead of new_name.

	* gcc.dg/graphite/pr68756.c: New test.

From-SVN: r234896
2016-04-12 10:08:48 +00:00
Jakub Jelinek
4e0eea7560 re PR tree-optimization/70602 (wrong code at -O1 and above on x86_64-linux-gnu in 32-bit mode (and at -Os only in 64-bit mode))
PR tree-optimization/70602
	* tree-sra.c (generate_subtree_copies): Don't write anything into
	constant pool decls.

	* gcc.c-torture/execute/pr70602.c: New test.

From-SVN: r234895
2016-04-12 11:08:43 +02:00
Jakub Jelinek
21f3a2369b omp-low.c (lower_omp_target): Use GOMP_MAP_FIRSTPRIVATE_INT regardless whether there are depend clauses or not.
* omp-low.c (lower_omp_target): Use GOMP_MAP_FIRSTPRIVATE_INT
	regardless whether there are depend clauses or not.

	* libgomp.h (struct gomp_target_task): Remove firstprivate_copies
	field.
	* target.c (gomp_target_fallback_firstprivate,
	gomp_target_unshare_firstprivate): Removed.
	(GOMP_target_ext): Copy firstprivate vars into gomp_allocaed memory
	before waiting for dependencies.
	(gomp_target_task_fn): Don't copy firstprivate vars here.
	* task.c (GOMP_PLUGIN_target_task_completion): Don't free
	firstprivate_copies here.
	(gomp_create_target_task): Don't initialize firstprivate_copies field.
	* testsuite/libgomp.c/target-25.c (main): Use map (to:) instead of
	explicit/implicit firstprivate.

From-SVN: r234894
2016-04-12 09:05:29 +02:00
GCC Administrator
a3f90b8c03 Daily bump.
From-SVN: r234892
2016-04-12 00:16:19 +00:00
Michael Meissner
35fbda430d re PR target/70381 (On powerpc, -mfloat128 is on by default for all VSX systems)
[gcc]
2016-04-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/70381
	* config/rs6000/rs6000.c (rs6000_opt_masks): Disable using the
	target attribute and pragma from changing the -mfloat128
	and -mfloat128-hardware options.

	* doc/extend.texi (Additional Floating Types): Document PowerPC
	__float128 restrictions.

[libgcc]
2016-04-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/70381
	* configure.ac (powerpc*-*-linux*): Rework tests to build
	__float128 emulation routines to not depend on using #pragma GCC
	target to enable -mfloat128.
	* configure: Regnerate.

[gcc/testsuite]
2016-04-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/70381
	* gcc.target/powerpc/float128-1.c: New tests to make sure the
	__float128 emulator is built and runs.
	* gcc.target/powerpc/float128-1.c: Likewise.

	* lib/target-supports.exp (check_ppc_float128_sw_available):
	Rework tests for __float128 software and hardware
	availability. Fix exit condition to return 0 on success.

From-SVN: r234884
2016-04-11 19:45:35 +00:00