re PR debug/90900 (ICE in copy_rtx, at rtl.c:376)

2019-06-18  Richard Biener  <rguenther@suse.de>

	PR debug/90900
	* cfgexpand.c (expand_debug_expr): Treat NOTE_P DECL_RTL
	as if optimized away.

	* gcc.dg/gomp/pr90900.c: New testcase.

From-SVN: r272421
This commit is contained in:
Richard Biener 2019-06-18 13:56:24 +00:00 committed by Richard Biener
parent a9b6c90c5d
commit aa61ac43e0
4 changed files with 27 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2019-06-18 Richard Biener <rguenther@suse.de>
PR debug/90900
* cfgexpand.c (expand_debug_expr): Treat NOTE_P DECL_RTL
as if optimized away.
2019-06-18 Tom de Vries <tdevries@suse.de>
* config/nvptx/nvptx-protos.h (gen_set_softstack_insn): Remove.

View File

@ -4387,7 +4387,11 @@ expand_debug_expr (tree exp)
op0 = DECL_RTL_IF_SET (exp);
/* This decl was probably optimized away. */
if (!op0)
if (!op0
/* At least label RTXen are sometimes replaced by
NOTE_INSN_DELETED_LABEL. Any notes here are not
handled by copy_rtx. */
|| NOTE_P (op0))
{
if (!VAR_P (exp)
|| DECL_EXTERNAL (exp)

View File

@ -1,3 +1,8 @@
2019-06-18 Richard Biener <rguenther@suse.de>
PR debug/90900
* gcc.dg/gomp/pr90900.c: New testcase.
2019-06-18 Martin Sebor <msebor@redhat.com>
* gcc.dg/pr90866-2.c: Remove a pointless declaration

View File

@ -0,0 +1,11 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fopenmp -g" } */
void f (int a)
{
void *x = &&lab;
#pragma omp parallel
if (a)
{ lab: __builtin_unreachable(); }
x;
}