re PR c/8588 (ICE in extract_insn, at recog.c:2148)
PR c/8588 * optabs.c (expand_binop): Convert CONST_INTs in shift operations too. From-SVN: r59413
This commit is contained in:
parent
5066422418
commit
8d97a73440
|
@ -1,3 +1,9 @@
|
|||
2002-11-23 Eric Botcazou <ebotcazou@libertysurf.fr>
|
||||
|
||||
PR c/8588
|
||||
* optabs.c (expand_binop): Convert CONST_INTs in shift
|
||||
operations too.
|
||||
|
||||
2002-11-23 Eric Botcazou <ebotcazou@libertysurf.fr>
|
||||
|
||||
PR c/8518
|
||||
|
|
|
@ -754,9 +754,8 @@ expand_binop (mode, binoptab, op0, op1, target, unsignedp, methods)
|
|||
/* In case the insn wants input operands in modes different from
|
||||
those of the actual operands, convert the operands. It would
|
||||
seem that we don't need to convert CONST_INTs, but we do, so
|
||||
that they're properly zero-extended or sign-extended for their
|
||||
modes; shift operations are an exception, because the second
|
||||
operand needs not be extended to the mode of the result. */
|
||||
that they're properly zero-extended, sign-extended or truncated
|
||||
for their mode. */
|
||||
|
||||
if (GET_MODE (op0) != mode0
|
||||
&& mode0 != VOIDmode)
|
||||
|
@ -771,9 +770,7 @@ expand_binop (mode, binoptab, op0, op1, target, unsignedp, methods)
|
|||
xop1 = convert_modes (mode1,
|
||||
GET_MODE (op1) != VOIDmode
|
||||
? GET_MODE (op1)
|
||||
: ! shift_op
|
||||
? mode
|
||||
: mode1,
|
||||
: mode,
|
||||
xop1, unsignedp);
|
||||
|
||||
/* Now, if insn's predicates don't allow our operands, put them into
|
||||
|
|
Loading…
Reference in New Issue