re PR middle-end/24950 (ICE in operand_subword_force)

PR middle-end/24950
	* expmed.c (store_bit_field): Don't attempt to insv a field
	larger than the reg.

From-SVN: r107354
This commit is contained in:
Alan Modra 2005-11-22 13:16:29 +00:00 committed by Alan Modra
parent e168899134
commit 30f37b8d0c
2 changed files with 7 additions and 0 deletions

View file

@ -1,3 +1,9 @@
2005-11-22 Alan Modra <amodra@bigpond.net.au>
PR middle-end/24950
* expmed.c (store_bit_field): Don't attempt to insv a field
larger than the reg.
2005-11-22 Alan Modra <amodra@bigpond.net.au>
PR target/24954

View file

@ -643,6 +643,7 @@ store_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize,
bestmode = GET_MODE (op0);
if (bestmode == VOIDmode
|| GET_MODE_SIZE (bestmode) < GET_MODE_SIZE (fieldmode)
|| (SLOW_UNALIGNED_ACCESS (bestmode, MEM_ALIGN (op0))
&& GET_MODE_BITSIZE (bestmode) > MEM_ALIGN (op0)))
goto insv_loses;