re PR debug/89704 (ICE in add_const_value_attribute, at dwarf2out.c:19685)

PR debug/89704
	* dwarf2out.c (add_const_value_attribute): Return false for MINUS,
	SIGN_EXTEND and ZERO_EXTEND.

	* gcc.dg/debug/pr89704.c: New test.

From-SVN: r269700
This commit is contained in:
Jakub Jelinek 2019-03-15 09:00:46 +01:00 committed by Jakub Jelinek
parent b1403b691a
commit 8eb2215d8d
4 changed files with 28 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2019-03-15 Jakub Jelinek <jakub@redhat.com>
PR debug/89704
* dwarf2out.c (add_const_value_attribute): Return false for MINUS,
SIGN_EXTEND and ZERO_EXTEND.
2019-03-14 Jason Merrill <jason@redhat.com>
Jakub Jelinek <jakub@redhat.com>

View File

@ -19670,6 +19670,9 @@ add_const_value_attribute (dw_die_ref die, rtx rtl)
case HIGH:
case CONST_FIXED:
case MINUS:
case SIGN_EXTEND:
case ZERO_EXTEND:
return false;
case MEM:

View File

@ -1,3 +1,8 @@
2019-03-15 Jakub Jelinek <jakub@redhat.com>
PR debug/89704
* gcc.dg/debug/pr89704.c: New test.
2019-03-15 H.J. Lu <hongjiu.lu@intel.com>
PR target/89650

View File

@ -0,0 +1,14 @@
/* PR debug/89704 */
/* { dg-do compile } */
typedef __INTPTR_TYPE__ intptr_t;
int
foo (void)
{
lab1:;
lab2:;
static int i = (intptr_t) &&lab1 - (intptr_t) &&lab2;
static int j = (intptr_t) &&lab1 - (intptr_t) &&lab2;
return i;
}