Commit Graph

166706 Commits

Author SHA1 Message Date
GCC Administrator 64626f1bf1 Daily bump.
From-SVN: r268507
2019-02-04 00:16:28 +00:00
Martin Sebor 93fd0aad9c PR c/69661 - missing -Wsequence-point warning
gcc/testsuite.ChangeLog:
        * c-c++-common/Wsequence-point-2.c: New test.

From-SVN: r268504
2019-02-03 15:47:41 -07:00
Martin Sebor 0b841214a8 PR c++/44648 - missing -Wunused warning on a const variable in if statement
gcc/testsuite/ChangeLog:
	* g++.dg/warn/Wunused-var-35.C: New test.

From-SVN: r268503
2019-02-03 14:48:27 -07:00
Thomas Koenig 6090f91591 re PR fortran/67679 (-Wunitialized reports on compiler-generated variables)
2019-02-03  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/67679
	* trans-array.c (gfc_array_allocate):  For setting the bounds on
	the new array, add a condition for a not previously allocated
	variable.

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

	PR fortran/67679
	* gfortran.dg/warn_undefined_1.f90: New test.
	* gfortran.dg/coarray_lock_7.f90: Fix patterns in test.

From-SVN: r268502
2019-02-03 19:38:25 +00:00
Uros Bizjak d31fd1e8ab re PR target/89071 (AVX vcvtsd2ss lets us avoid PXOR dependency breaking for scalar float<->double and other scalar xmm,xmm instructions)
PR target/89071
	* config/i386/i386.md (*sqrt<mode>2_sse): Add (v,0) alternative.
	Do not prefer (v,v) alternative for non-AVX targets and (m,v)
	alternative for speed when TARGET_SSE_PARTIAL_REG_DEPENDENCY is set.
	(*rcpsf2_sse): Ditto.
	(*rsqrtsf2_sse): Ditto.
	(sse4_1_round<mode<2): Ditto.

From-SVN: r268496
2019-02-03 17:48:41 +01:00
Richard Biener c8eaf058ed re PR debug/87295 ([early debug] ICE with -ffat-lto-objects -fdebug-types-section -g)
2019-02-03  Richard Biener  <rguenther@suse.de>

	PR debug/87295
	* dwarf2out.c (copy_ancestor_tree): Register non-stubs as
	orig.

	* g++.dg/debug/dwarf2/pr87295.C: New testcase.

From-SVN: r268485
2019-02-03 10:53:01 +00:00
GCC Administrator 7d8b09996d Daily bump.
From-SVN: r268483
2019-02-03 00:16:12 +00:00
Dominique d'Humieres 1bdfc7aab0 re PR fortran/81344 (Can't disable -ffpe-trap (or not documented))
2019-02-02  Dominique d'Humieres  <dominiq@gcc.gnu.org>

	PR fortran/81344
	* invoke.texi: Document the behavior of repeated -ffpe-trap
	and -ffpe-summary.

From-SVN: r268480
2019-02-02 22:44:34 +01:00
Thomas Koenig 5197d79937 re PR fortran/88298 (Bogus conversion warning for CSHIFT with -fno-range-check -m64)
2019-02-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/88298
	* arith.c (gfc_int2int): Do not warn if src->do_not_warn is set.
	* gfortran.h (gfc_expr): Add flag do_not_warn.
	* intrinsic.c (gfc_convert_type_warn): Set expr->do_not_warn if
	no warning is desired.

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

	PR fortran/88298
	* gfortran.dg/warn_conversion_10.f90: New test.

From-SVN: r268475
2019-02-02 16:21:43 +00:00
Paul Thomas a3df90b967 re PR fortran/88393 ([OOP] Segfault with type-bound assignment)
2019-02-02  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/88393
	* trans-expr.c (gfc_conv_procedure_call): For derived entities,
	passed in parentheses to class formals, invert the order of
	copying allocatable components to taking the _data of the
	class expression.

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

	PR fortran/88393
	* gfortran.dg/alloc_comp_assign_16.f03 : New test.

From-SVN: r268474
2019-02-02 09:23:30 +00:00
Paul Thomas da46c08e8b re PR fortran/88980 (segfault on allocatable string member assignment)
2019-02-02  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/88980
	* trans-array.c (gfc_array_init_size): Add element_size to the
	arguments.
	(gfc_array_allocate): Remove the recalculation of the size of
	the element and use element_size from the call to the above.
	Unconditionally set the span field of the descriptor.

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

	PR fortran/88980
	* gfortran.dg/realloc_on_assign_32.f90 : New test.

From-SVN: r268473
2019-02-02 09:16:44 +00:00
Paul Thomas 6bb45a6b52 re PR fortran/88685 (pointer class array argument indexing)
2019-02-02  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/88685
	* expr.c (is_subref_array): Move the check for class pointer
	dummy arrays to after the reference check. If we haven't seen
	an array reference other than an element and a component is not
	class or derived, return false.

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

	PR fortran/88685
	* gfortran.dg/pointer_array_component_3.f90 : New test.

From-SVN: r268472
2019-02-02 09:10:58 +00:00
Jason Merrill 01826160a3 PR c++/88761 - ICE with reference capture of constant.
Here, we capture nf, then the use of the proxy decays to a constant during
semantic processing of +nf.  Since we saw some decay from proxy to constant,
we walk through the lambda body to see which proxies are still used, but we
weren't walking into subtrees of DECL_EXPR at all, so we missed the use of
&nf in the initializer of y, and removed the capture.  But then at
instantiation time we try to use nf, don't have a proxy anymore, and ICE.

	* lambda.c (mark_const_cap_r): Do walk subtrees of DECL_EXPR for
	non-proxy decls.

From-SVN: r268471
2019-02-01 23:21:06 -05:00
Jason Merrill fde81c6f70 * nsdmi-template14.C: Expect error for last example.
From-SVN: r268470
2019-02-01 23:19:00 -05:00
GCC Administrator 432335c980 Daily bump.
From-SVN: r268469
2019-02-02 00:16:12 +00:00
Jakub Jelinek dbe138906d re PR middle-end/87887 (ICE in make_ssa_name_fn, at tree-ssanames.c:269)
PR middle-end/87887
	* config/i386/i386.c (ix86_simd_clone_compute_vecsize_and_simdlen):
	Punt with warning on aggregate return or argument types.  Ignore
	type/mode checking for uniform arguments.

	* gcc.dg/gomp/pr87887-1.c: New test.
	* gcc.dg/gomp/pr87887-2.c: New test.

From-SVN: r268466
2019-02-02 01:04:39 +01:00
Ian Lance Taylor fc34dbfdb0 runtime: add hurd netpoll and semaphore support
Patch by Svante Signell.
    
    Reviewed-on: https://go-review.googlesource.com/c/160827

From-SVN: r268465
2019-02-01 23:57:08 +00:00
Joseph Myers 73353297f3 Regenerate .pot files.
gcc/po:
	* gcc.pot: Regenerate.

libcpp/po:
	* cpplib.pot: Regenerate.

From-SVN: r268464
2019-02-01 23:04:22 +00:00
Ian Lance Taylor cf5773c116 runtime: add getproccount for hurd
Patch by Svante Signell.
    
    Reviewed-on: https://go-review.googlesource.com/c/160825

From-SVN: r268463
2019-02-01 22:55:55 +00:00
Jakub Jelinek 30253e2356 re PR fortran/83246 (internal compiler error or loader problem might be related to a PARAMETER statement being in a BLOCK)
PR fortran/83246
	PR fortran/89084
	* trans-decl.c (generate_local_decl): Add referenced FL_PARAMETERs
	if sym->ns->construct_entities rather than if
	sym->ns->parent->code->op == EXEC_BLOCK.

	* gfortran.dg/pr89084.f90: New test.
	* gfortran.dg/lto/pr89084_0.f90: New test.
	* gfortran.dg/pr83246.f90: New test.

From-SVN: r268462
2019-02-01 23:54:05 +01:00
Ian Lance Taylor d9f0237f70 libgo: add configury and sysinfo support for hurd
Patch by Svante Signell.
    
    Reviewed-on: https://go-review.googlesource.com/c/160824

From-SVN: r268461
2019-02-01 22:46:39 +00:00
Ian Lance Taylor 59ea40d0f2 libgo: add hurd build tags to test files
Patch by Svante Signell.
    
    Reviewed-on: https://go-review.googlesource.com/c/160823

From-SVN: r268460
2019-02-01 22:11:50 +00:00
Ian Lance Taylor 27d6b51071 libgo: add hurd build tags
Patch by Svante Signell.
    
    Reviewed-on: https://go-review.googlesource.com/c/160822

From-SVN: r268459
2019-02-01 21:57:36 +00:00
Ian Lance Taylor b52a3881f0 runtime, sync: use __atomic intrinsics instead of __sync
GCC has supported the __atomic intrinsics since 4.7.  They are better
    than the __sync intrinsics in that they specify a memory model and,
    more importantly for our purposes, they are reliably implemented
    either in the compiler or in libatomic.
    
    Fixes https://gcc.gnu.org/PR52084
    
    Reviewed-on: https://go-review.googlesource.com/c/160820

From-SVN: r268458
2019-02-01 21:55:38 +00:00
Marek Polacek a53a893b4f PR c++/88325 - ICE with invalid out-of-line template member definition.
* parser.c (cp_parser_class_name): Don't call make_typename_type
	for overloads.

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

From-SVN: r268455
2019-02-01 19:58:44 +00:00
Segher Boessenkool e71ac16355 combine: Use TDF_DETAILS for "can't combine" dump prints
Some people use the -fdump-rtl-combine dumps (instead of the -da or
-fdump-rtl-combine-all dump), but the "Can't combine iN into iM"
messages do not make any sense if the failed combine attempts are not
printed otherwise.  So let's change that.


	* combine.c (try_combine): Do not print "Can't combine" messages unless
	printing failed combination attempts.

From-SVN: r268453
2019-02-01 17:26:48 +01:00
Martin Jambor 09e3944e2b [PR hsa/87863] Set assembler name of group and global variables early
2019-02-01  Martin Jambor  <mjambor@suse.cz>

	PR hsa/87863
	* omp-grid.c (grid_mark_variable_segment): Set assembler name of group
	segment and global segment variables before making them static.

From-SVN: r268452
2019-02-01 17:22:13 +01:00
Martin Jambor b2a8d77a99 Add two missing dump_enabled_p calls
2019-02-01  Martin Jambor  <mjambor@suse.cz>

	* omp-grid.c (grid_target_follows_gridifiable_pattern): Guard two
	missed optimization dump with dump_enabled_p.

From-SVN: r268451
2019-02-01 17:15:36 +01:00
Ian Lance Taylor 284c00e210 compiler: support alias to pointer type as receiver in method declaration
Fixes golang/go#27994.
    
    Reviewed-on: https://go-review.googlesource.com/c/160459

From-SVN: r268450
2019-02-01 15:00:46 +00:00
Richard Biener 577d65881e re PR tree-optimization/88597 (Compile time hog w/ -O1 -fpeel-loops)
2019-02-01  Richard Biener  <rguenther@suse.de>

	PR middle-end/88597
	* tree-scalar-evolution.c (analyze_scalar_evolution): Set up
	the instantiate cache.
	(instantiate_scev_binary): Elide second operand procesing
	if equal to the first.
	* tree-chrec.c (chrec_contains_symbols): Add visited set.
	(chrec_contains_undetermined): Likewise.
	(tree_contains_chrecs): Likewise.

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

From-SVN: r268449
2019-02-01 13:41:43 +00:00
Jan Hubicka 61a8637c88 * parms.def (MAX_INLINE_INSNS_SINGLE): Reduce from 400 to 200.
From-SVN: r268448
2019-02-01 10:46:36 +00:00
Richard Biener 3c54b7d606 re PR tree-optimization/85497 ([graphite] ICE in set_codegen_error, at graphite-isl-ast-to-gimple.c:206)
2019-02-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/85497
	* gcc.dg/graphite/pr85497.c: New testcase.

From-SVN: r268447
2019-02-01 09:17:14 +00:00
Richard Biener ff9d5a2a4a re PR debug/87451 (FAIL: gcc.dg/debug/dwarf2/inline5.c)
2019-02-01  Richard Biener  <rguenther@suse.de>

	PR testsuite/87451
	* gcc.dg/debug/dwarf2/inline5.c: Allow more comment variants.

From-SVN: r268446
2019-02-01 09:08:55 +00:00
Jakub Jelinek 1651b09414 re PR tree-optimization/89143 (comparison of abs(i) against excessive constant less than UXXX_MAX no longer folded)
PR tree-optimization/89143
	* wide-int-range.h (wide_int_range_absu): Declare.
	* wide-int-range.cc (wide_int_range_absu): New function.
	* tree-vrp.c (extract_range_from_unary_expr): Handle ABSU_EXPR.

	* gcc.dg/tree-ssa/vrp121.c: New test.

From-SVN: r268445
2019-02-01 09:44:23 +01:00
Jakub Jelinek ac33bce89c re PR tree-optimization/88107 (ICE in find_outermost_region_in_block, at tree-cfg.c:7157)
PR tree-optimization/88107
	* tree-cfg.c (find_outermost_region_in_block): Add ALL argument,
	instead of assertion that eh_region_outermost is non-NULL, if it
	is NULL, set *ALL to true and return NULL.
	(move_sese_region_to_fn): Adjust caller, if all is set, call
	duplicate_eh_regions with NULL region.

	* gcc.dg/gomp/pr88107.c: New test.

From-SVN: r268444
2019-02-01 09:43:02 +01:00
Jakub Jelinek 7beb51f914 re PR c++/87175 (__attribute__)) is ignored by the parser)
PR c++/87175
	* parser.c (cp_parser_gnu_attributes_opt): Set ok to false
	if require_open failed.

	* g++.dg/ext/attrib57.C: New test.

From-SVN: r268443
2019-02-01 09:42:01 +01:00
Richard Biener 09822562e4 re PR rtl-optimization/88593 (cleanup_cfg may make cached dominance info stale)
2019-02-01  Richard Biener  <rguenth@suse.de>

	PR rtl-optimization/88593
	* mode-switching.c (optimize_mode_switching): Free dominators before
	calling cleanup_cfg.

From-SVN: r268442
2019-02-01 08:07:35 +00:00
Bin Cheng 3c2df91668 re PR tree-optimization/88932 (ICE: verify_ssa failed (Error: definition in block 29 does not dominate use in block 25))
PR tree-optimization/88932
	* tree-predcom.c (try_combine_chains): Get loop bbs in dom order.

	gcc/testsuite
	* gfortran.dg/pr88932.f90: New test.

From-SVN: r268439
2019-02-01 02:39:52 +00:00
Marek Polacek e9fa2f6ded PR c++/88983 - ICE with switch in constexpr function.
* constexpr.c (cxx_eval_switch_expr): Use SWITCH_COND and SWITCH_BODY.
	(cxx_eval_constant_expression) <case COND_EXPR>: Don't look for the
	label in the else branch if we found it in the then branch.

	* g++.dg/cpp1y/constexpr-88983.C: New test.

From-SVN: r268438
2019-02-01 00:30:46 +00:00
GCC Administrator bb9160aeb0 Daily bump.
From-SVN: r268437
2019-02-01 00:16:21 +00:00
Jakub Jelinek 829a433832 re PR middle-end/89137 (gcc/omp-low.c:7135: possible read of uninit memory ?)
PR middle-end/89137
	* omp-low.c (lower_omp_task_reductions): Drop redundant test to avoid
	bogus clang warning.

From-SVN: r268434
2019-02-01 00:05:01 +01:00
Uros Bizjak 8d169fc1b1 * libgfortran/ChangeLog: Better commit message for my last commit.
From-SVN: r268433
2019-01-31 23:59:36 +01:00
Thomas Koenig 1bd83e0b0b re PR fortran/88669 (Contiguous attribute wrongly rejected)
2019-01-31  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/88669
	* resolve.c (resolve_component): If the reference is a BT_CLASS,
	copy the contiguous attribute from the reference and use the
	correct attributes.

2019-01-31  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/88669
	* gfortran.dg/contiguous_9.f90: New test.

From-SVN: r268432
2019-01-31 22:21:28 +00:00
Uros Bizjak ba2c1ca8c3 t-linux: Add -mfp-rounding-mode=d to HOST_LIBGCC2_CFLAGS.
* config/alpha/t-linux: Add -mfp-rounding-mode=d
	to HOST_LIBGCC2_CFLAGS.

From-SVN: r268430
2019-01-31 21:49:02 +01:00
Marek Polacek b27f74e777 PR c++/89083, c++/80864 - ICE with list initialization in template.
* constexpr.c (adjust_temp_type): Use copy_node and change the type
	instead of using build_constructor.
	* decl.c (reshape_init_r): Don't reshape a digested initializer.
	Return the initializer for COMPOUND_LITERAL_P.

	* g++.dg/cpp0x/initlist107.C: New test.
	* g++.dg/cpp0x/initlist108.C: New test.
	* g++.dg/cpp0x/initlist109.C: New test.
	* g++.dg/cpp0x/initlist110.C: New test.
	* g++.dg/cpp0x/initlist111.C: New test.
	* g++.dg/cpp0x/initlist112.C: New test.
	* g++.dg/init/ptrfn4.C: New test.

From-SVN: r268428
2019-01-31 20:21:11 +00:00
Uros Bizjak 1d4b4f4979 re PR target/89071 (AVX vcvtsd2ss lets us avoid PXOR dependency breaking for scalar float<->double and other scalar xmm,xmm instructions)
PR target/89071
	* config/i386/i386.md (*extendsfdf2): Split out reg->reg
	alternative to avoid partial SSE register stall for TARGET_AVX.
	(truncdfsf2): Ditto.
	(sse4_1_round<mode>2): Ditto.

From-SVN: r268427
2019-01-31 21:06:42 +01:00
David Malcolm ec2be203d1 Fix bogus fix-it for FLT_MAX (PR c/89122)
PR c/89122 reports that we emit a bogus fix-it hint for the case where
the code uses FLT_MAX, but has included <limits.h> rather than <float.h>:

x.c:3:11: error: 'FLT_MAX' undeclared here (not in a function); did you
  mean 'INT_MAX'?
    3 | float f = FLT_MAX;
      |           ^~~~~~~
      |           INT_MAX

This patch adds some knowledge of <float.h> (and <cfloat>) to
known-headers.cc, fixing the issue:

x.c:3:11: error: 'FLT_MAX' undeclared here (not in a function)
    3 | float f = FLT_MAX;
      |           ^~~~~~~
x.c:2:1: note: 'FLT_MAX' is defined in header '<float.h>'; did you forget
  to '#include <float.h>'?
    1 | #include <limits.h>
  +++ |+#include <float.h>
    2 |

gcc/c-family/ChangeLog:
	PR c/89122
	* known-headers.cc (get_stdlib_header_for_name): Add
	{FLT|DBL|LDBL}_{MAX|MIN} to "hints" array.

gcc/testsuite/ChangeLog:
	PR c/89122
	* g++.dg/spellcheck-stdlib.C (test_FLT_MAX): New test.
	* gcc.dg/spellcheck-stdlib.c (test_FLT_MAX): New test.

From-SVN: r268426
2019-01-31 18:09:29 +00:00
Jason Merrill 636ecb78a3 PR c++/88752 - ICE with lambda and constexpr if.
In this testcase, we look for an instantiation of the outer lambda from
within the inner lambda.  enclosing_instantiation_of didn't handle this
properly, as it assumed that any references would be from the same lambda
nesting depth.  Fixed thus.

	* cp-tree.h (LAMBDA_EXPR_INSTANTIATED): New.
	* pt.c (tsubst_lambda_expr): Set it.
	(instantiated_lambda_fn_p): Check it.
	(enclosing_instantiation_of): Use it.

From-SVN: r268424
2019-01-31 10:03:21 -05:00
Bill Schmidt f942ef18b8 re PR middle-end/89008 (O2 and O1 results differ for simple test)
2018-01-31  Bill Schmidt  <wschmidt@linux.ibm.com>

	PR tree-optimization/89008
	* gimple-ssa-strength-reduction.c (slsr_process_mul): Don't
	process anything of the form X * 0.

From-SVN: r268422
2019-01-31 13:53:06 +00:00
Tom de Vries 3a3f5dd1af [libbacktrace] Fix .gnu_debugaltlink build-id check
The 'debugaltlink_name_len =+ 1' bug reported in PR89136 exposes the fact that
the build-id is not verified for the .gnu_debugaltlink.

Fix both problems.

2019-01-31  Tom de Vries  <tdevries@suse.de>

	PR libbacktrace/89136
	* elf.c (elf_add): Read build-id if with_buildid_data.  Fix
	'debugaltlink_name_len =+ 1'.

From-SVN: r268419
2019-01-31 12:17:32 +00:00