Commit 84db09e3 by DJ Delorie Committed by DJ Delorie

rl78.c (rl78_propogate_register_origins): Verify that CLOBBERs are REGs before…

rl78.c (rl78_propogate_register_origins): Verify that CLOBBERs are REGs before propogating their values.

* config/rl78/rl78.c (rl78_propogate_register_origins): Verify
that CLOBBERs are REGs before propogating their values.

From-SVN: r206867
parent d1a5b5e3
2014-01-20 DJ Delorie <dj@redhat.com>
* config/rl78/rl78.c (rl78_propogate_register_origins): Verify
that CLOBBERs are REGs before propogating their values.
2014-01-20 H.J. Lu <hongjiu.lu@intel.com> 2014-01-20 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/59789 PR middle-end/59789
......
...@@ -3426,7 +3426,8 @@ rl78_propogate_register_origins (void) ...@@ -3426,7 +3426,8 @@ rl78_propogate_register_origins (void)
{ {
rtx clobber = XVECEXP (pat, 0, 1); rtx clobber = XVECEXP (pat, 0, 1);
pat = XVECEXP (pat, 0, 0); pat = XVECEXP (pat, 0, 0);
if (GET_CODE (clobber) == CLOBBER) if (GET_CODE (clobber) == CLOBBER
&& GET_CODE (XEXP (clobber, 0)) == REG)
{ {
int cr = REGNO (XEXP (clobber, 0)); int cr = REGNO (XEXP (clobber, 0));
int mb = GET_MODE_SIZE (GET_MODE (XEXP (clobber, 0))); int mb = GET_MODE_SIZE (GET_MODE (XEXP (clobber, 0)));
...@@ -3569,7 +3570,8 @@ rl78_propogate_register_origins (void) ...@@ -3569,7 +3570,8 @@ rl78_propogate_register_origins (void)
} }
} }
} }
else if (GET_CODE (pat) == CLOBBER) else if (GET_CODE (pat) == CLOBBER
&& GET_CODE (XEXP (pat, 0)) == REG)
{ {
if (REG_P (XEXP (pat, 0))) if (REG_P (XEXP (pat, 0)))
{ {
......
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