* rtlanal.c (loc_mentioned_in_p): Test XVECEXPs correctly.

From-SVN: r132794
This commit is contained in:
Alexandre Oliva 2008-03-01 03:35:50 +00:00 committed by Alexandre Oliva
parent d2b6be726e
commit e065105898
2 changed files with 7 additions and 4 deletions

View File

@ -1,3 +1,7 @@
2008-03-01 Alexandre Oliva <aoliva@redhat.com>
* rtlanal.c (loc_mentioned_in_p): Test XVECEXPs correctly.
2008-03-01 Alexandre Oliva <aoliva@redhat.com>
* tree-flow-inline.h (next_readonly_imm_use): Return

View File

@ -2989,16 +2989,15 @@ loc_mentioned_in_p (rtx *loc, const_rtx in)
fmt = GET_RTX_FORMAT (code);
for (i = GET_RTX_LENGTH (code) - 1; i >= 0; i--)
{
if (loc == &in->u.fld[i].rt_rtx)
return 1;
if (fmt[i] == 'e')
{
if (loc_mentioned_in_p (loc, XEXP (in, i)))
if (loc == &XEXP (in, i) || loc_mentioned_in_p (loc, XEXP (in, i)))
return 1;
}
else if (fmt[i] == 'E')
for (j = XVECLEN (in, i) - 1; j >= 0; j--)
if (loc_mentioned_in_p (loc, XVECEXP (in, i, j)))
if (loc == &XVECEXP (in, i, j)
|| loc_mentioned_in_p (loc, XVECEXP (in, i, j)))
return 1;
}
return 0;