167488 Commits

Author SHA1 Message Date
Harald Anlauf
edaff7c944 re PR fortran/87045 (pointer to array of character)
2019-03-13  Harald Anlauf  <anlauf@gmx.de>

	PR fortran/87045
	* trans-expr.c (gfc_trans_pointer_assignment): Move check for same
	string length so that we do not get false errors for deferred
	length.

	PR fortran/87045
	* gfortran.dg/pr87045.f90: New test.

From-SVN: r269664
2019-03-13 21:33:27 +00:00
Vladimir Makarov
1e05d1854c re PR target/85860 (ICE: in lra_split_hard_reg_for, at lra-assigns.c:1810: unable to find a register to spill with -flive-range-shrinkage -mbmi2)
2019-03-13  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/85860
	* lra-constraints.c (inherit_in_ebb): Update
	potential_reload_hard_regs along with live_hard_regs.

2019-03-13  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/85860
	* gcc.target/i386/pr85860.c: New.

From-SVN: r269662
2019-03-13 20:35:18 +00:00
Jakub Jelinek
43fb4c8056 re PR debug/89498 (ICE in AT_loc_list, at dwarf2out.c:4871)
PR debug/89498
	* dwarf2out.c (size_of_die): For dw_val_class_view_list always use
	DWARF_OFFSET_SIZE.
	(value_format): For dw_val_class_view_list never use DW_FORM_loclistx.

From-SVN: r269661
2019-03-13 21:22:15 +01:00
Marek Polacek
ef7e79a367 PR c++/89660 - bogus error with -Wredundant-move.
* typeck.c (maybe_warn_pessimizing_move): Only accept (T &) &arg
	as the std::move's argument.  Don't call convert_for_initialization
	when warn_redundant_move isn't on.

	* g++.dg/cpp0x/Wredundant-move8.C: New test.
	* g++.dg/cpp0x/Wredundant-move9.C: New test.

From-SVN: r269660
2019-03-13 20:04:33 +00:00
Marek Polacek
2b0a62741e PR c++/89686 - mixing init-capture and simple-capture in lambda.
* parser.c (cp_parser_lambda_introducer): Give error when combining
	init-capture and simple-capture.

	* g++.dg/cpp2a/lambda-pack-init2.C: New test.

From-SVN: r269659
2019-03-13 19:58:20 +00:00
Janus Weil
84083a711e re PR fortran/89601 ([PDT] ICE: Segmentation fault (in resolve_component))
fix PR 89601

2019-03-13  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/89601
	* decl.c (gfc_match_formal_arglist): Reject empty type parameter lists.
	(gfc_match_derived_decl): Mark as PDT only if type parameter list was
	matched successfully.

2019-03-13  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/89601
	* gfortran.dg/pdt_16.f03: Modified to avoid follow-up errors.
	* gfortran.dg/pdt_30.f90: New test case.

From-SVN: r269658
2019-03-13 20:52:23 +01:00
Marek Polacek
cbfa3ec327 PR c++/88979 - further P0634 fix for constructors.
* parser.c (cp_parser_decl_specifier_seq): Pass flags to
	cp_parser_constructor_declarator_p.
	(cp_parser_direct_declarator): Allow missing typename for constructor
	parameters.
	(cp_parser_constructor_declarator_p): Add FLAGS parameter.  Pass it to
	cp_parser_type_specifier.

	* g++.dg/cpp2a/typename15.C: New test.

From-SVN: r269656
2019-03-13 18:38:45 +00:00
Martin Sebor
129ef157d4 PR tree-optimization/89662 - -Warray-bounds ICE on void* arithmetic
gcc/ChangeLog:

	PR tree-optimization/89662
	* tree-vrp.c (vrp_prop::check_mem_ref): Avoid assuming every type
	has a size.

gcc/testsuite/ChangeLog:

	PR tree-optimization/89662
	* gcc.dg/Warray-bounds-41.c: New test.

From-SVN: r269655
2019-03-13 11:19:43 -06:00
Paolo Carlini
bd8ea48313 re PR c++/63508 (ICE when using bracketed initializer on pointer to member function of a templated class)
2019-03-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/63508
	* g++.dg/cpp0x/auto53.C: New.

From-SVN: r269651
2019-03-13 15:01:00 +00:00
Richard Biener
cd5091f1ea re PR middle-end/89677 (internal compiler error: in wide_int_to_tree_1, at tree.c:1549)
2019-03-13  Richard Biener  <rguenther@suse.de>

	PR middle-end/89677
	* tree-scalar-evolution.c (simplify_peeled_chrec): Do not
	throw FP expressions at tree-affine.

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

From-SVN: r269646
2019-03-13 11:32:11 +00:00
Richard Biener
c045ea5763 tree-pretty-print.c (dump_generic_node): For -gimple properly dump negative integer constants using _Literal (type) -num.
2019-03-14  Richard Biener  <rguenther@suse.de>

	* tree-pretty-print.c (dump_generic_node): For -gimple properly
	dump negative integer constants using _Literal (type) -num.

From-SVN: r269645
2019-03-13 10:56:32 +00:00
Paolo Carlini
31ba0418a2 re PR c++/85558 (ICE in make_rtl_for_nonlocal_decl when using static member of template class)
2019-03-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/85558
	* g++.dg/other/friend16.C: New.
	* g++.dg/other/friend17.C: Likewise.

From-SVN: r269644
2019-03-13 10:32:29 +00:00
Eric Botcazou
7a26e2739d re PR sanitizer/80953 (Support libsanitizer on Solaris)
PR sanitizer/80953
	Merge from LLVM revision 355980
	* asan/asan_allocator.h (kAllocatorSpace): Define for SPARC.
	(kAllocatorSize): Likewise.
	(DefaultSizeClassMap): Likewise.
	* asan/asan_mapping.h (kSPARC64_ShadowOffset64): Define.
	(SHADOW_OFFSET): Define for SPARC.
	Include asan_mapping_sparc64.h for SPARC 64-bit.
	* asan/asan_mapping_sparc64.h: New file.

From-SVN: r269641
2019-03-13 09:19:25 +00:00
Eric Botcazou
a196c82cf2 re PR sanitizer/80953 (Support libsanitizer on Solaris)
PR sanitizer/80953
	Merge from LLVM revision 355979
	* asan/asan_globals.c (GetGlobalsForAddress): Use internal_memcpy to
	copy Global objects for SPARC with GCC.

From-SVN: r269640
2019-03-13 09:15:02 +00:00
Eric Botcazou
36b50aeb4e re PR sanitizer/80953 (Support libsanitizer on Solaris)
PR sanitizer/80953
	Merge from LLVM revision 355978
	* sanitizer_common/sanitizer_allocator_primary32.h
	(class SizeClassAllocator32): Assert that kSpaceSize is power of 2 if
	SANITIZER_SIGN_EXTENDED_ADDRESSES is set.
	(PointerIsMine): Deal with SANITIZER_SIGN_EXTENDED_ADDRESSES.
	(ComputeRegionId): Likewise.
	* sanitizer_common/sanitizer_linux.cc (GetMaxVirtualAddress): Return
	appropriate value for SPARC 64-bit.
	* sanitizer_common/sanitizer_platform.h (SANITIZER_MMAP_RANGE_SIZE):
	Define for SPARC.
	(SANITIZER_SIGN_EXTENDED_ADDRESSES): Define to 1 for SPARC 64-bit.

From-SVN: r269639
2019-03-13 09:11:46 +00:00
Eric Botcazou
017abbe362 re PR sanitizer/80953 (Support libsanitizer on Solaris)
PR sanitizer/80953
	Merge from LLVM revision 355965
	* sanitizer_common/sanitizer_linux.cc (GetWriteFlag): Implement for
	SPARC/Linux.
	(GetPcSpBp): Likewise.
	* sanitizer_common/sanitizer_stacktrace.cc (GetNextInstructionPc):
	Adjust for SPARC.
	* sanitizer_common/sanitizer_stacktrace.h (SANITIZER_CAN_FAST_UNWIND):
	Define to 1 for SPARC.
	* sanitizer_common/sanitizer_stacktrace_sparc.cc: Rewrite.
	* sanitizer_common/sanitizer_unwind_linux_libcdep.cc (SlowUnwindStack):
	Adjust the PC address for SPARC with GCC.

From-SVN: r269638
2019-03-13 09:05:43 +00:00
Jakub Jelinek
6e089cc3f6 ipa-param-manipulation.h (struct ipa_parm_adjustment): Remove nonlocal_value member.
* ipa-param-manipulation.h (struct ipa_parm_adjustment): Remove
	nonlocal_value member.

From-SVN: r269637
2019-03-13 09:48:56 +01:00
Jakub Jelinek
33813f1d70 re PR middle-end/88588 (ICE in make_decl_rtl, at varasm.c:1329)
PR middle-end/88588
	* omp-simd-clone.c (ipa_simd_modify_stmt_ops): Handle PHI args.
	(ipa_simd_modify_function_body): Handle PHIs.

	* c-c++-common/gomp/pr88588.c: New test.

From-SVN: r269636
2019-03-13 09:24:41 +01:00
Thomas Koenig
55b9c61257 [multiple changes]
2019-03-13  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/66695
	PR fortran/77746
	PR fortran/79485
	* gfortran.h (gfc_symbol): Add bind_c component.
	(gfc_get_gsymbol): Add argument bind_c.
	* decl.c (add_global_entry): Add bind_c argument to
	gfc_get_symbol.
	* parse.c (parse_block_data): Likewise.
	(parse_module): Likewise.
	(add_global_procedure): Likewise.
	(add_global_program): Likewise.
	* resolve.c (resolve_common_blocks): Likewise.
	(resolve_global_procedure): Likewise.
	(gfc_verify_binding_labels): Likewise.
	* symbol.c (gfc_get_gsymbol): Add argument bind_c. Set bind_c
	in gsym.
	* trans-decl.c (gfc_get_module_backend_decl): Add bind_c argument
	to gfc_get_symbol.
	(gfc_get_extern_function_decl): If the sym has a binding label
	and it cannot be found in the global symbol tabel, it is the wrong
	one and vice versa.

2019-03-13 Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/66695
	PR fortran/77746
	PR fortran/79485
	* gfortran.dg/binding_label_tests_30.f90: New test.
	* gfortran.dg/binding_label_tests_31.f90: New test.
	* gfortran.dg/binding_label_tests_32.f90: New test.
	* gfortran.dg/binding_label_tests_33.f90: New test.

From-SVN: r269635
2019-03-13 07:21:33 +00:00
Ian Lance Taylor
599b9f723e compiler: compare parse methods when indexing interface types for export
This change fixes a bug in which two interface types were being
    incorrectly commoned (considered identical) in the initial stages of
    writing out types to export data. The indexer does a walk to collect
    candidates for export, inserting types into a table to eliminate
    duplicates; as part of this process a local interface type T1 was
    being commoned with a different interface type T2. This caused a cycle
    in the exported type graph due to the way embedded interfaces are
    handled.
    
    The fix was to add a new flag to the Type::is_identical utility
    routine to request that interface type comparison be done by examining
    the original parse methods, as opposed to the expanded method set,
    then use the new flag when creating the hash map for the exporter.
    
    Fixes golang/go#30659.
    
    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/166638

From-SVN: r269634
2019-03-13 05:12:05 +00:00
Ian Lance Taylor
f4390da0c5 compiler: add new debugging helper function debug_go_type()
Add a new debugging utility routine debug_go_type(), intended to
    display the contents of a Type object in a way useful to debugging
    a run of the compiler.  Prior to this the only useful alternative
    for debugging types was invoking the mangled_name() method, which
    has problems (for example, won't work on interface types prior
    to finalizing of methods).
    
    This is a "deep" dump, meaning that all types reachable from the
    type passed to debug_go_type() will be printed out. Example:
    
    (gdb) print debug_go_type(t1)
          T0        0x535f300  'net/http.Header' -> T1
          T1        0x535d3d0  map ['string' -> string] T4
          T2        0x5304bb0  'string' -> string
          T3        0x331f900  string
          T4        0x535d370  array [] 'string' -> string
    
    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/166637

From-SVN: r269633
2019-03-13 04:43:33 +00:00
Iain Buclaw
50e021a590 pr88957.d: Move to gdc.dg/ubsan.
gcc/testsuite/ChangeLog:

2019-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>

	* gdc.dg/pr88957.d: Move to gdc.dg/ubsan.
	* gdc.dg/ubsan/ubsan.exp: New file.
	* lib/gdc.exp (gdc_include_flags): Remove unused target variable.
	Explicitly return flags from procedure.

From-SVN: r269632
2019-03-13 00:18:37 +00:00
GCC Administrator
1ad43ab9a3 Daily bump.
From-SVN: r269631
2019-03-13 00:16:13 +00:00
John David Anglin
2ff656f421 re PR libstdc++/89461 (FAIL: experimental/net/timer/waitable/cons.cc)
PR libstdc++/89461
	* testsuite/lib/libstdc++.exp: Locate libatomic.
	* testsuite/lib/dg-options.exp (add_options_for_libatomic): New.
	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
	libatomic options.
	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
	* testsuite/experimental/net/timer/waitable/cons.cc: Likewise.
	* testsuite/experimental/net/timer/waitable/dest.cc: Likewise.
	* testsuite/experimental/net/timer/waitable/ops.cc: Likewise.

From-SVN: r269628
2019-03-12 23:13:36 +00:00
Iain Buclaw
b9da027866 d/dmd: Merge upstream dmd 19b1454b5
Backports fixes for many ICEs that occurred when using the vector .array
property in both CTFE and code generation passes.

Fixes https://gcc.gnu.org/PR88957

Reviewed-on: https://github.com/dlang/dmd/pull/9438

gcc/d/ChangeLog:

2019-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>

	PR d/88957
	* expr.cc (ExprVisitor::visit(VectorArrayExp)): New override.

gcc/testsuite/ChangeLog:

2019-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>

	PR d/88957
	* gdc.dg/pr88957.d: New test.
	* gdc.dg/simd.d: Add new vector tests.

From-SVN: r269627
2019-03-12 23:10:49 +00:00
Uros Bizjak
035f5b9e0b re PR d/87824 (x86_64-linux multilib issues)
PR d/87824
	* lib/gdc.exp (gdc_include_flags): Find C++ headers by calling
	libstdc++v3/scripts/testsuite_flags.  Filter out unsupported
	-nostdinc++ flag.

From-SVN: r269625
2019-03-12 19:37:31 +01:00
Thomas Koenig
1eabf876d5 re PR fortran/87673 (Errors caused by using function for character length in allocate with typespec)
2019-03-12  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/87673
	* match.c (gfc_match_type_spec): Remove call to
	gfc_resolve_expr for character length.

2019-03-12  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/87673
	* gfortran.dg/charlen_17.f90: New test.

From-SVN: r269624
2019-03-12 17:22:28 +00:00
Robin Dapp
6684d2dbff S/390: Perform more aggressive inlining
This patch sets the inlining parameters for z13 and later to rather
aggressive values in response to PR85103 that caused performance
regressions in SPEC2006's sjeng and gobmk benchmarks.

From-SVN: r269623
2019-03-12 17:12:56 +00:00
Robin Dapp
ff99338ce3 S/390: Rework instruction scheduling.
This patch set adds new pipeline descriptions for z13 and z14.  Based
on that, the scoring and some properties are handled differently in
the scheduler hooks.

The patch before (r269620) also belongs to this set but I accidentally
applied it separately.

From-SVN: r269622
2019-03-12 17:08:27 +00:00
Robin Dapp
2380e04277 S/390: Change z13 pipeline description.
This patch adapts the z13 pipeline description.

From-SVN: r269620
2019-03-12 16:57:08 +00:00
Iain Buclaw
8451f4a52e Use libiberty's lrealpath to avoid portability problems.
The dmd front-end function FileName::canonicalName could be called
during the semantic pass of import("file") expressions, so still
requires that realpath() be redefined.

Initial patch by Rainer Orth.

gcc/d/ChangeLog:

2019-03-12  Iain Buclaw  <ibuclaw@gdcproject.org>

	PR d/87866
	* d-system.h (realpath): Redefine as lrealpath.

From-SVN: r269619
2019-03-12 16:31:48 +00:00
Martin Liska
1fe61adfcc Replace can't in error messages for Fortran.
2019-03-12  Martin Liska  <mliska@suse.cz>

	* c-opts.c (c_common_handle_option): Wrap option with %< and %>.
2019-03-12  Martin Liska  <mliska@suse.cz>

	* decl.c (add_init_expr_to_sym): Replace usage of 'can't'
	with 'cannot'.
	(variable_decl): Likewise.
	(cray_pointer_decl): Likewise.
	(match_binding_attributes): Likewise.
	* f95-lang.c (gfc_init): Likewise.
	* interface.c (gfc_check_typebound_override): Likewise.
	* intrinsic.c (make_generic): Likewise.
	* module.c (dump_module): Likewise.
	(gfc_use_module): Likewise.
	* primary.c (gfc_convert_to_structure_constructor): Likewise.
	* resolve.c (resolve_entries): Likewise.
	(check_generic_tbp_ambiguity): Likewise.
	(get_checked_tb_operator_target): Likewise.
	* scanner.c (load_file): Likewise.
	* trans-expr.c (gfc_conv_intrinsic_to_class): Likewise.
2019-03-12  Martin Liska  <mliska@suse.cz>

	* config/i386/i386.c: Reword an error message.
2019-03-12  Martin Liska  <mliska@suse.cz>

	* gfortran.dg/abstract_type_3.f03: Amend test-case scan
	patterns.
	* gfortran.dg/binding_label_tests_4.f03: Likewise.
	* gfortran.dg/c_f_pointer_tests_6.f90: Likewise.
	* gfortran.dg/c_funloc_tests_6.f90: Likewise.
	* gfortran.dg/c_loc_tests_17.f90: Likewise.
	* gfortran.dg/constructor_9.f90: Likewise.
	* gfortran.dg/dec_structure_8.f90: Likewise.
	* gfortran.dg/entry_4.f90: Likewise.
	* gfortran.dg/init_char_with_nonchar_ctr.f90: Likewise.
	* gfortran.dg/initialization_23.f90: Likewise.
	* gfortran.dg/logical_assignment_1.f90: Likewise.
	* gfortran.dg/pr80752.f90: Likewise.
	* gfortran.dg/pr88116_1.f90: Likewise.
	* gfortran.dg/pr88467.f90: Likewise.
	* gfortran.dg/typebound_call_7.f03: Likewise.
	* gfortran.dg/typebound_generic_1.f03: Likewise.
	* gfortran.dg/typebound_operator_2.f03: Likewise.
	* gfortran.dg/typebound_operator_4.f03: Likewise.
	* gfortran.dg/typebound_proc_9.f03: Likewise.
	* gfortran.dg/unlimited_polymorphic_2.f03: Likewise.

From-SVN: r269616
2019-03-12 15:11:42 +00:00
Paul Thomas
0e30888065 re PR fortran/89363 (RANK incorrect for unallocated allocatable)
2019-03-12  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/89363
	PR fortran/89364
	* trans-expr.c (set_dtype_for_unallocated): New function.
	(gfc_conv_gfc_desc_to_cfi_desc): Call it for allocatable and
	pointer arguments.
	(gfc_conv_procedure_call): Likewise. Also, set the ubound of
	the final dimension to -1 for assumed rank formal args that are
	associated with assumed size arrays.
	* trans-intrinsic.c (gfc_conv_intrinsic_bound): Return -1 for
	the final dimension of assumed rank entities that are argument
	associated with assumed size arrays.
	(gfc_conv_intrinsic_shape): Likewise return -1 for the final
	dimension of the shape intrinsic.

2019-03-12  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/89363
	* gfortran.dg/assumed_rank_16.f90: New test.

	PR fortran/89364
	* gfortran.dg/assumed_rank_17.f90: New test.

From-SVN: r269612
2019-03-12 13:40:51 +00:00
Iain Buclaw
c9634470ba d/dmd: Merge upstream dmd 7423993c9
Fixes C++ mangling for substituted basic types that are target-specific.
Introduces a new method that currently does nothing, but could in future
make use of flag_abi_version as extern(C++) integration improves in
latter versions of the D front-end.

Reviewed-on: https://github.com/dlang/dmd/pull/9439

gcc/d/ChangeLog:

2019-03-12  Iain Buclaw  <ibuclaw@gdcproject.org>

	* d-lang.cc (d_init_options): Set global.params.cplusplus to C++14.
	* d-target.cc (Target::cppFundamentalType): New method.

From-SVN: r269611
2019-03-12 13:29:16 +00:00
Martin Jambor
df2a91dece Fix dumping of "former thunk" info in cgraph dump
2019-03-12  Martin Jambor  <mjambor@suse.cz>

	* cgraph.c (cgraph_node::dump): Dump more info for former thunks,
	terminate with newline.

From-SVN: r269608
2019-03-12 13:39:18 +01:00
Jakub Jelinek
63c79a7509 re PR target/52726 (Composed error message will not get translated)
PR target/52726
	* config/s390/s390.md (tabort): Use %wd instead of
	HOST_WIDE_INT_PRINT_DEC in error message, reword to avoid two capital
	letters and periods.
	* config/tilepro/tilepro.c (tilepro_print_operand): Use %wd in
	output_operand_lossage instead of HOST_WIDE_INT_PRINT_DEC, replace
	's with %< and %>.

From-SVN: r269607
2019-03-12 11:07:25 +01:00
Jakub Jelinek
1c178a5af5 re PR middle-end/89663 (ICE in expand_builtin_int_roundingfn_2, at builtins.c:2831)
PR middle-end/89663
	* builtins.c (expand_builtin_int_roundingfn,
	expand_builtin_int_roundingfn_2): Return NULL_RTX instead of
	gcc_unreachable if validate_arglist fails.

	* gcc.c-torture/compile/pr89663-1.c: New test.
	* gcc.c-torture/compile/pr89663-2.c: New test.

From-SVN: r269605
2019-03-12 09:17:08 +01:00
Richard Biener
d9e1f37fad re PR tree-optimization/89664 (ICE in free_bb, at tree-ssa-math-opts.c:522)
2019-03-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/89664
	* tree-ssa-math-opts.c (execute_cse_reciprocals_1): Properly
	free the occurance tree after the early out.

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

From-SVN: r269604
2019-03-12 07:56:23 +00:00
Eric Botcazou
05073a0d54 Fix last entry.
From-SVN: r269603
2019-03-12 07:34:39 +00:00
Jason Merrill
c7e936dbc7 PR c++/86521 - wrong overload resolution with ref-qualifiers.
Here we were wrongly treating binding a const lvalue ref to an xvalue as
direct binding, which is wrong under [dcl.init.ref] and [over.match.ref].

	* call.c (build_user_type_conversion_1): Don't use a conversion to a
	reference of the wrong rvalueness for direct binding.

From-SVN: r269602
2019-03-11 23:19:22 -04:00
GCC Administrator
6d5d5cb5b2 Daily bump.
From-SVN: r269601
2019-03-12 00:16:11 +00:00
Jakub Jelinek
a7b9de8b70 re PR fortran/89651 (OpenMP private array uninitialized warning with -O flag)
PR fortran/89651
	* trans-openmp.c (gfc_omp_clause_default_ctor): Set TREE_NO_WARNING
	on decl if adding COND_EXPR for allocatable.
	(gfc_omp_clause_copy_ctor): Set TREE_NO_WARNING on dest.

	* gfortran.dg/gomp/pr89651.f90: New test.

From-SVN: r269598
2019-03-11 23:27:39 +01:00
Jakub Jelinek
4f150726cf re PR middle-end/89655 (GCC crashes building linux kernel for arm 32-bit (culprit r269453))
PR middle-end/89655
	PR bootstrap/89656
	* vr-values.c (vr_values::update_value_range): If
	old_vr->varying_p (), don't update it, make new_vr also VARYING
	and return false.

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

From-SVN: r269597
2019-03-11 22:58:43 +01:00
Christophe Lyon
011acc8989 [ARM] Fix availability of FP16-FP64 conversion instructions
2019-03-11  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/arm/f16_f64_conv_no_dp.c: Add arm_fp16_ok effective
	target.

From-SVN: r269596
2019-03-11 22:04:02 +01:00
Martin Liska
63d42e89be Fix double string quoting.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* config/aarch64/aarch64.c (aarch64_override_options_internal):
	Fix double string quoting.

From-SVN: r269595
2019-03-11 20:56:07 +00:00
Ian Lance Taylor
7856fb4539 re PR libbacktrace/89669 (/usr/ccs/bin/ld: Unsatisfied symbols: backtrace_uncompress_zdebug)
PR libbacktrace/89669
	* Makefile.am (BUILDTESTS): Only add ztest and ztest_alloc if
	HAVE_ELF.
	* Makefile.in: Regenerate.

From-SVN: r269594
2019-03-11 20:40:34 +00:00
Jonathan Wakely
187fdaea67 PR libstdc++/89460 Fix Networking TS test failures on HP-UX
Check for availability of POSIX sockatmark before using it.

Rename _S_ntoh overloads that are ambiguous when passed an integral type
that is neither uint16_t nor uint32_t.

	PR libstdc++/89460
	* configure.ac: Check for sockatmark.
	* crossconfig.m4: Check for sockatmark.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* include/experimental/internet (address_v4::_S_hton): Rename
	overloaded functions to _S_hton_16 and _S_ntoh_16.
	(address_v4::_S_ntoh): Rename to _S_ntoh_16 and _S_ntoh_32.
	(basic_endpoint): Adjust calls to _S_hton and _S_ntoh.
	* include/experimental/socket (basic_socket::at_mark): Check
	_GLIBCXX_HAVE_SOCKATMARK.

From-SVN: r269588
2019-03-11 16:28:11 +00:00
Martin Liska
93964ebd2f Wrap apostrophes in gcc internal format with %'.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* check-internal-format-escaping.py: Uncomment apostrophes
	check.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* collect-utils.c (collect_wait): Wrap apostrophes
	in gcc internal format with %'.
	* collect2.c (main): Likewise.
	(scan_prog_file): Likewise.
	(scan_libraries): Likewise.
	* config/i386/i386.c (ix86_expand_call): Likewise.
	(ix86_handle_interrupt_attribute): Likewise.
	* config/nds32/nds32-intrinsic.c (nds32_expand_builtin_impl): Likewise.
	* config/nds32/nds32.c (nds32_insert_attributes): Likewise.
	* config/rl78/rl78.c (rl78_handle_saddr_attribute): Likewise.
	* lto-wrapper.c (find_crtoffloadtable): Likewise.
	* symtab.c (symtab_node::verify_base): Likewise.
	* tree-cfg.c (verify_gimple_label): Likewise.
	* tree.c (verify_type_variant): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* c-opts.c (c_common_post_options): Wrap apostrophes
	in gcc internal format with %'.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* cvt.c (build_expr_type_conversion): Wrap apostrophes
	in gcc internal format with %'.
	* decl.c (check_no_redeclaration_friend_default_args): Likewise.
	(grokfndecl): Likewise.
	* name-lookup.c (do_pushtag): Likewise.
	* pt.c (unify_parameter_deduction_failure): Likewise.
	(unify_template_deduction_failure): Likewise.

From-SVN: r269587
2019-03-11 13:59:04 +00:00
Martin Liska
a3f9f006a8 Wrap option names in gcc internal messages with %< and %>.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* check-internal-format-escaping.py: New file.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* builtins.c (expand_builtin_thread_pointer): Wrap an option name
	in a string format message and fix GNU coding style.
	(expand_builtin_set_thread_pointer): Likewise.
	* common/config/aarch64/aarch64-common.c (aarch64_rewrite_selected_cpu): Likewise.
	* common/config/alpha/alpha-common.c (alpha_handle_option): Likewise.
	* common/config/arc/arc-common.c (arc_handle_option): Likewise.
	* common/config/arm/arm-common.c (arm_parse_fpu_option): Likewise.
	* common/config/bfin/bfin-common.c (bfin_handle_option): Likewise.
	* common/config/i386/i386-common.c (ix86_handle_option): Likewise.
	* common/config/ia64/ia64-common.c (ia64_handle_option): Likewise.
	* common/config/m68k/m68k-common.c (m68k_handle_option): Likewise.
	* common/config/msp430/msp430-common.c (msp430_handle_option): Likewise.
	* common/config/nds32/nds32-common.c (nds32_handle_option): Likewise.
	* common/config/powerpcspe/powerpcspe-common.c (rs6000_handle_option): Likewise.
	* common/config/riscv/riscv-common.c (riscv_subset_list::parsing_subset_version): Likewise.
	(riscv_subset_list::parse_std_ext): Likewise.
	(riscv_subset_list::parse_sv_or_non_std_ext): Likewise.
	(riscv_subset_list::parse): Likewise.
	* common/config/rs6000/rs6000-common.c (rs6000_handle_option): Likewise.
	* config/aarch64/aarch64.c (aarch64_parse_one_option_token): Likewise.
	(aarch64_override_options_internal): Likewise.
	(aarch64_validate_mcpu): Likewise.
	(aarch64_validate_march): Likewise.
	(aarch64_validate_mtune): Likewise.
	(aarch64_override_options): Likewise.
	* config/alpha/alpha.c (alpha_option_override): Likewise.
	* config/arc/arc.c (arc_init): Likewise.
	(parse_mrgf_banked_regs_option): Likewise.
	(arc_override_options): Likewise.
	(arc_expand_builtin_aligned): Likewise.
	* config/arm/arm-builtins.c (arm_expand_neon_builtin): Likewise.
	(arm_expand_builtin): Likewise.
	* config/arm/arm.c (arm_option_check_internal): Likewise.
	(arm_configure_build_target): Likewise.
	(arm_option_override): Likewise.
	(arm_options_perform_arch_sanity_checks): Likewise.
	(arm_handle_cmse_nonsecure_entry): Likewise.
	(arm_handle_cmse_nonsecure_call): Likewise.
	(arm_tls_referenced_p): Likewise.
	(thumb1_expand_prologue): Likewise.
	* config/avr/avr.c (avr_option_override): Likewise.
	* config/bfin/bfin.c (bfin_option_override): Likewise.
	* config/c6x/c6x.c (c6x_option_override): Likewise.
	* config/cr16/cr16.c (cr16_override_options): Likewise.
	* config/cris/cris.c (cris_option_override): Likewise.
	* config/csky/csky.c (csky_handle_isr_attribute): Likewise.
	* config/darwin-c.c (macosx_version_as_macro): Likewise.
	* config/darwin.c (darwin_override_options): Likewise.
	* config/frv/frv.c (frv_expand_builtin): Likewise.
	* config/h8300/h8300.c (h8300_option_override): Likewise.
	* config/i386/i386.c (parse_mtune_ctrl_str): Likewise.
	(ix86_option_override_internal): Likewise.
	(warn_once_call_ms2sysv_xlogues): Likewise.
	(ix86_expand_prologue): Likewise.
	(split_stack_prologue_scratch_regno): Likewise.
	(ix86_warn_parameter_passing_abi): Likewise.
	* config/ia64/ia64.c (fix_range): Likewise.
	* config/m68k/m68k.c (m68k_option_override): Likewise.
	* config/microblaze/microblaze.c (microblaze_option_override): Likewise.
	* config/mips/mips.c (mips_emit_probe_stack_range): Likewise.
	(mips_set_compression_mode): Likewise.
	* config/mmix/mmix.c (mmix_option_override): Likewise.
	* config/mn10300/mn10300.c (mn10300_option_override): Likewise.
	* config/msp430/msp430.c (msp430_option_override): Likewise.
	* config/nds32/nds32.c (nds32_option_override): Likewise.
	* config/nios2/nios2.c (nios2_custom_check_insns): Likewise.
	(nios2_option_override): Likewise.
	(nios2_expand_custom_builtin): Likewise.
	* config/nvptx/mkoffload.c (main): Likewise.
	* config/nvptx/nvptx.c (diagnose_openacc_conflict): Likewise.
	* config/pa/pa.c (fix_range): Likewise.
	(pa_option_override): Likewise.
	* config/riscv/riscv.c (riscv_parse_cpu): Likewise.
	(riscv_option_override): Likewise.
	* config/rl78/rl78.c (rl78_option_override): Likewise.
	* config/rs6000/aix61.h: Likewise.
	* config/rs6000/aix71.h: Likewise.
	* config/rs6000/aix72.h: Likewise.
	* config/rs6000/driver-rs6000.c (elf_platform): Likewise.
	* config/rs6000/freebsd64.h: Likewise.
	* config/rs6000/linux64.h: Likewise.
	* config/rs6000/rs6000.c (rs6000_option_override_internal): Likewise.
	(rs6000_expand_zeroop_builtin): Likewise.
	(rs6000_expand_mtfsb_builtin): Likewise.
	(rs6000_expand_set_fpscr_rn_builtin): Likewise.
	(rs6000_expand_set_fpscr_drn_builtin): Likewise.
	(rs6000_invalid_builtin): Likewise.
	(rs6000_expand_split_stack_prologue): Likewise.
	* config/rs6000/rtems.h: Likewise.
	* config/rx/rx.c (valid_psw_flag): Likewise.
	(rx_expand_builtin): Likewise.
	* config/s390/s390-c.c (s390_resolve_overloaded_builtin): Likewise.
	* config/s390/s390.c (s390_expand_builtin): Likewise.
	(s390_function_profiler): Likewise.
	(s390_option_override_internal): Likewise.
	(s390_option_override): Likewise.
	* config/sh/sh.c (sh_option_override): Likewise.
	(sh_builtin_saveregs): Likewise.
	(sh_fix_range): Likewise.
	* config/sh/vxworks.h: Likewise.
	* config/sparc/sparc.c (sparc_option_override): Likewise.
	* config/spu/spu.c (spu_option_override): Likewise.
	(fix_range): Likewise.
	* config/visium/visium.c (visium_option_override): Likewise.
	(visium_handle_interrupt_attr): Likewise.
	* config/xtensa/xtensa.c (xtensa_option_override): Likewise.
	* dbgcnt.c (dbg_cnt_set_limit_by_name): Likewise.
	(dbg_cnt_process_opt): Likewise.
	* dwarf2out.c (output_dwarf_version): Likewise.
	* except.c (expand_eh_return): Likewise.
	* gcc.c (defined): Likewise.
	(driver_handle_option): Likewise.
	(process_command): Likewise.
	(compare_files): Likewise.
	(driver::prepare_infiles): Likewise.
	(driver::do_spec_on_infiles): Likewise.
	(driver::maybe_run_linker): Likewise.
	* omp-offload.c (oacc_parse_default_dims): Likewise.
	* opts-global.c (handle_common_deferred_options): Likewise.
	* opts.c (parse_sanitizer_options): Likewise.
	(common_handle_option): Likewise.
	(enable_warning_as_error): Likewise.
	* passes.c (enable_disable_pass): Likewise.
	* plugin.c (parse_plugin_arg_opt): Likewise.
	(default_plugin_dir_name): Likewise.
	* targhooks.c (default_expand_builtin_saveregs): Likewise.
	(default_pch_valid_p): Likewise.
	* toplev.c (init_asm_output): Likewise.
	(process_options): Likewise.
	(toplev::run_self_tests): Likewise.
	* tree-cfg.c (verify_gimple_call): Likewise.
	* tree-inline.c (inline_forbidden_p_stmt): Likewise.
	(tree_inlinable_function_p): Likewise.
	* var-tracking.c (vt_find_locations): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* gcc-interface/misc.c (gnat_post_options) Wrap an option name
	in a string format message and fix GNU coding style.:
2019-03-11  Martin Liska  <mliska@suse.cz>

	* c-attribs.c (handle_nocf_check_attribute): Wrap an option name
	in a string format message and fix GNU coding style.
	* c-common.c (vector_types_convertible_p): Likewise.
	(c_build_vec_perm_expr): Likewise.
	* c-indentation.c (get_visual_column): Likewise.
	* c-opts.c (c_common_handle_option): Likewise.
	(c_common_post_options): Likewise.
	(sanitize_cpp_opts): Likewise.
	* c-pch.c (c_common_pch_pragma): Likewise.
	* c-pragma.c (handle_pragma_pack): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* c-decl.c (check_for_loop_decls): Wrap an option name
	in a string format message and fix GNU coding style.
	* c-parser.c (c_parser_declspecs): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* call.c (convert_arg_to_ellipsis): Wrap an option name
	in a string format message and fix GNU coding style.
	(build_over_call): Likewise.
	* class.c (check_field_decl): Likewise.
	(layout_nonempty_base_or_field): Likewise.
	* constexpr.c (cxx_eval_loop_expr): Likewise.
	* cvt.c (type_promotes_to): Likewise.
	* decl.c (cxx_init_decl_processing): Likewise.
	(mark_inline_variable): Likewise.
	(grokdeclarator): Likewise.
	* decl2.c (record_mangling): Likewise.
	* error.c (maybe_warn_cpp0x): Likewise.
	* except.c (doing_eh): Likewise.
	* mangle.c (maybe_check_abi_tags): Likewise.
	* parser.c (cp_parser_diagnose_invalid_type_name): Likewise.
	(cp_parser_userdef_numeric_literal): Likewise.
	(cp_parser_primary_expression): Likewise.
	(cp_parser_unqualified_id): Likewise.
	(cp_parser_pseudo_destructor_name): Likewise.
	(cp_parser_builtin_offsetof): Likewise.
	(cp_parser_lambda_expression): Likewise.
	(cp_parser_lambda_introducer): Likewise.
	(cp_parser_lambda_declarator_opt): Likewise.
	(cp_parser_selection_statement): Likewise.
	(cp_parser_init_statement): Likewise.
	(cp_parser_decomposition_declaration): Likewise.
	(cp_parser_function_specifier_opt): Likewise.
	(cp_parser_static_assert): Likewise.
	(cp_parser_simple_type_specifier): Likewise.
	(cp_parser_namespace_definition): Likewise.
	(cp_parser_using_declaration): Likewise.
	(cp_parser_ctor_initializer_opt_and_function_body): Likewise.
	(cp_parser_initializer_list): Likewise.
	(cp_parser_type_parameter_key): Likewise.
	(cp_parser_member_declaration): Likewise.
	(cp_parser_try_block): Likewise.
	(cp_parser_std_attribute_spec): Likewise.
	(cp_parser_requires_clause_opt): Likewise.
	* pt.c (check_template_variable): Likewise.
	(check_default_tmpl_args): Likewise.
	(push_tinst_level_loc): Likewise.
	(instantiate_pending_templates): Likewise.
	(invalid_nontype_parm_type_p): Likewise.
	* repo.c (get_base_filename): Likewise.
	* rtti.c (typeid_ok_p): Likewise.
	(build_dynamic_cast_1): Likewise.
	* tree.c (maybe_warn_parm_abi): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* decl.c (match_record_decl): Wrap an option name
	in a string format message and fix GNU coding style.
	(gfc_match_pointer): Likewise.
	* expr.c (find_array_section): Likewise.
	* intrinsic.c (gfc_is_intrinsic): Likewise.
	* options.c (gfc_post_options): Likewise.
	* primary.c (match_integer_constant): Likewise.
	* trans-common.c (translate_common): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* lto-lang.c (lto_post_options): Wrap an option name
	in a string format message and fix GNU coding style.
	* lto-symtab.c (lto_symtab_merge_decls_2): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

	* g++.dg/conversion/simd3.C (foo): Wrap option names
	with apostrophe character.
	* g++.dg/cpp1z/decomp3.C (test): Likewise.
	(test3): Likewise.
	* g++.dg/cpp1z/decomp4.C (test): Likewise.
	* g++.dg/cpp1z/decomp44.C (foo): Likewise.
	* g++.dg/cpp1z/decomp45.C (f): Likewise.
	* g++.dg/opt/pr34036.C: Likewise.
	* g++.dg/spellcheck-c++-11-keyword.C: Likewise.
	* gcc.dg/c90-fordecl-1.c (foo): Likewise.
	* gcc.dg/cpp/dir-only-4.c: Likewise.
	* gcc.dg/cpp/dir-only-5.c: Likewise.
	* gcc.dg/cpp/pr71591.c: Likewise.
	* gcc.dg/format/opt-1.c: Likewise.
	* gcc.dg/format/opt-2.c: Likewise.
	* gcc.dg/format/opt-3.c: Likewise.
	* gcc.dg/format/opt-4.c: Likewise.
	* gcc.dg/format/opt-5.c: Likewise.
	* gcc.dg/format/opt-6.c: Likewise.
	* gcc.dg/pr22231.c: Likewise.
	* gcc.dg/pr33007.c: Likewise.
	* gcc.dg/simd-1.c (hanneke): Likewise.
	* gcc.dg/simd-5.c: Likewise.
	* gcc.dg/simd-6.c: Likewise.
	* gcc.dg/spellcheck-options-14.c: Likewise.
	* gcc.dg/spellcheck-options-15.c: Likewise.
	* gcc.dg/spellcheck-options-16.c: Likewise.
	* gcc.dg/spellcheck-options-17.c: Likewise.
	* gcc.dg/tree-ssa/pr23109.c: Likewise.
	* gcc.dg/tree-ssa/recip-5.c: Likewise.
	* gcc.target/i386/cet-notrack-1a.c (func): Likewise.
	(__attribute__): Likewise.
	* gcc.target/i386/cet-notrack-icf-1.c (fn3): Likewise.
	* gcc.target/i386/cet-notrack-icf-3.c (__attribute__): Likewise.
	* gcc.target/powerpc/warn-1.c: Likewise.
	* gcc.target/powerpc/warn-2.c: Likewise.

From-SVN: r269586
2019-03-11 13:58:44 +00:00
Jonathan Wakely
355d4eb36a Change test to use const variables instead of macros
This is C++ so there's no reason to use macros here.

	* testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Use
	const variables instead of macros.

From-SVN: r269585
2019-03-11 13:46:09 +00:00