(convert_modes): Can't truncate REG with gen_lowpart if

TRULY_NOOP_TRUNCATION doesn't allow it.

From-SVN: r6306
This commit is contained in:
Jim Wilson 1993-12-24 12:20:44 -08:00
parent 4433322379
commit 2bf29316da
1 changed files with 3 additions and 1 deletions

View File

@ -1223,7 +1223,9 @@ convert_modes (mode, oldmode, x, unsignedp)
|| (GET_MODE_SIZE (mode) <= GET_MODE_SIZE (oldmode)
&& ((GET_CODE (x) == MEM && ! MEM_VOLATILE_P (x)
&& direct_load[(int) mode])
|| GET_CODE (x) == REG)))))
|| (GET_CODE (x) == REG
&& TRULY_NOOP_TRUNCATION (GET_MODE_BITSIZE (mode),
GET_MODE_BITSIZE (GET_MODE (x)))))))))
{
/* ?? If we don't know OLDMODE, we have to assume here that
X does not need sign- or zero-extension. This may not be