mirror of git://gcc.gnu.org/git/gcc.git
arm.c (arm_print_operand case 'S'): Validate that the operand is a shift operand before calling shift_op.
* arm.c (arm_print_operand case 'S'): Validate that the operand is a shift operand before calling shift_op. Avoid redundant call of shift_op. From-SVN: r114264
This commit is contained in:
parent
c32827b0e6
commit
beed32b8fa
|
|
@ -1,3 +1,9 @@
|
||||||
|
2006-05-31 Richard Earnshaw <richard.earnshaw@arm.com>
|
||||||
|
|
||||||
|
* arm.c (arm_print_operand case 'S'): Validate that the operand is
|
||||||
|
a shift operand before calling shift_op. Avoid redundant call of
|
||||||
|
shift_op.
|
||||||
|
|
||||||
2006-05-30 Naveen.H.S <naveenh@kpitcummins.com>
|
2006-05-30 Naveen.H.S <naveenh@kpitcummins.com>
|
||||||
DJ Delorie <dj@redhat.com>
|
DJ Delorie <dj@redhat.com>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11013,11 +11013,19 @@ arm_print_operand (FILE *stream, rtx x, int code)
|
||||||
case 'S':
|
case 'S':
|
||||||
{
|
{
|
||||||
HOST_WIDE_INT val;
|
HOST_WIDE_INT val;
|
||||||
const char * shift = shift_op (x, &val);
|
const char *shift;
|
||||||
|
|
||||||
|
if (!shift_operator (x, SImode))
|
||||||
|
{
|
||||||
|
output_operand_lossage ("invalid shift operand");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
shift = shift_op (x, &val);
|
||||||
|
|
||||||
if (shift)
|
if (shift)
|
||||||
{
|
{
|
||||||
fprintf (stream, ", %s ", shift_op (x, &val));
|
fprintf (stream, ", %s ", shift);
|
||||||
if (val == -1)
|
if (val == -1)
|
||||||
arm_print_operand (stream, XEXP (x, 1), 0);
|
arm_print_operand (stream, XEXP (x, 1), 0);
|
||||||
else
|
else
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue