Commit d540153b by Jakub Jelinek Committed by Jakub Jelinek

re PR debug/53923 (ICE: RTL check: expected code 'reg', have 'debug_expr' in…

re PR debug/53923 (ICE: RTL check: expected code 'reg', have 'debug_expr' in rhs_regno, at rtl.h:1091)

	PR debug/53923
	* valtrack.c (dead_debug_insert_temp): Drop non-reg uses
	from the chain.

From-SVN: r190883
parent 28b4fc51
2012-09-03 Jakub Jelinek <jakub@redhat.com>
PR debug/53923
* valtrack.c (dead_debug_insert_temp): Drop non-reg uses
from the chain.
2012-09-03 Joseph Myers <joseph@codesourcery.com> 2012-09-03 Joseph Myers <joseph@codesourcery.com>
* common.opt (--no-sysroot-suffix): New driver option. * common.opt (--no-sysroot-suffix): New driver option.
......
...@@ -333,6 +333,14 @@ dead_debug_insert_temp (struct dead_debug *debug, unsigned int uregno, ...@@ -333,6 +333,14 @@ dead_debug_insert_temp (struct dead_debug *debug, unsigned int uregno,
{ {
if (DF_REF_REGNO (cur->use) == uregno) if (DF_REF_REGNO (cur->use) == uregno)
{ {
/* If this loc has been changed e.g. to debug_expr already
as part of a multi-register use, just drop it. */
if (!REG_P (*DF_REF_REAL_LOC (cur->use)))
{
*tailp = cur->next;
XDELETE (cur);
continue;
}
*usesp = cur; *usesp = cur;
usesp = &cur->next; usesp = &cur->next;
*tailp = cur->next; *tailp = cur->next;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment