recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode when calling simplify_subreg.

* recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode
	when calling simplify_subreg.  This is needed to allow replacing
	of expression of one mode by expression of different mode.

From-SVN: r42214
This commit is contained in:
Jan Hubicka 2001-05-17 19:49:34 +02:00 committed by Jan Hubicka
parent 20415bba8a
commit 992550d9a6
2 changed files with 9 additions and 1 deletions

View File

@ -1,3 +1,9 @@
Thu May 17 19:48:00 CEST 2001 Jan Hubicka <jh@suse.cz>
* recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode
when calling simplify_subreg. This is needed to allow replacing
of expression of one mode by expression of different mode.
Thu May 17 19:40:03 CEST 2001 Jan Hubicka <jh@suse.cz>
* simplify-rtx.c (simplify_subreg): Avoid creating of incorrect subregs.

View File

@ -582,7 +582,9 @@ validate_replace_rtx_1 (loc, from, to, object)
if (rtx_equal_p (SUBREG_REG (x), from))
{
rtx temp;
temp = simplify_subreg (GET_MODE (x), to, GET_MODE (SUBREG_REG (x)),
temp = simplify_subreg (GET_MODE (x), to,
GET_MODE (to) != VOIDmode
? GET_MODE (to) : GET_MODE (SUBREG_REG (x)),
SUBREG_BYTE (x));
if (temp)
{