m32c.c (m32c_expand_insv): Check that the value we're inserting is a singlt-bit constant.
* config/m32c/m32c.c (m32c_expand_insv): Check that the value we're inserting is a singlt-bit constant. Co-Authored-By: DJ Delorie <dj@redhat.com> From-SVN: r114250
This commit is contained in:
parent
96a782e226
commit
9cb96754ae
|
@ -1,3 +1,9 @@
|
|||
2006-05-30 Naveen.H.S <naveenh@kpitcummins.com>
|
||||
DJ Delorie <dj@redhat.com>
|
||||
|
||||
* config/m32c/m32c.c (m32c_expand_insv): Check that the value
|
||||
we're inserting is a singlt-bit constant.
|
||||
|
||||
2006-05-30 Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
* simplify-rtx.c (simplify_binary_operation_1) <LSHIFTRT>: Cast
|
||||
|
|
|
@ -3435,6 +3435,14 @@ m32c_expand_insv (rtx *operands)
|
|||
if (INTVAL (operands[1]) != 1)
|
||||
return 1;
|
||||
|
||||
/* Our insv opcode (bset, bclr) can only insert a one-bit constant. */
|
||||
if (GET_CODE (operands[3]) != CONST_INT)
|
||||
return 1;
|
||||
if (INTVAL (operands[3]) != 0
|
||||
&& INTVAL (operands[3]) != 1
|
||||
&& INTVAL (operands[3]) != -1)
|
||||
return 1;
|
||||
|
||||
mask = 1 << INTVAL (operands[2]);
|
||||
|
||||
op0 = operands[0];
|
||||
|
|
Loading…
Reference in New Issue