arm.c: Verify modes on operands in predicates
From-SVN: r30088
This commit is contained in:
parent
3a2ea2588f
commit
9ce71c6fbd
2 changed files with 25 additions and 4 deletions
|
@ -1,3 +1,10 @@
|
|||
Tue Oct 19 18:42:58 1999 Bernd Schmidt <bernds@cygnus.co.uk>
|
||||
|
||||
* arm.c (fpu_rhs_operand): Verify modes.
|
||||
(fpu_add_operand): Likewise.
|
||||
(di_operand): Likewise.
|
||||
(soft_df_operand): Likewise.
|
||||
|
||||
Tue Oct 19 15:26:11 1999 Richard Earnshaw (rearnsha@arm.com)
|
||||
|
||||
* arm.c (arm_return_in_memory): APCS rules state that the elements
|
||||
|
|
|
@ -2213,8 +2213,12 @@ fpu_rhs_operand (op, mode)
|
|||
{
|
||||
if (s_register_operand (op, mode))
|
||||
return TRUE;
|
||||
else if (GET_CODE (op) == CONST_DOUBLE)
|
||||
return (const_double_rtx_ok_for_fpu (op));
|
||||
|
||||
if (GET_MODE (op) != mode && mode != VOIDmode)
|
||||
return FALSE;
|
||||
|
||||
if (GET_CODE (op) == CONST_DOUBLE)
|
||||
return const_double_rtx_ok_for_fpu (op);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -2226,7 +2230,11 @@ fpu_add_operand (op, mode)
|
|||
{
|
||||
if (s_register_operand (op, mode))
|
||||
return TRUE;
|
||||
else if (GET_CODE (op) == CONST_DOUBLE)
|
||||
|
||||
if (GET_MODE (op) != mode && mode != VOIDmode)
|
||||
return FALSE;
|
||||
|
||||
if (GET_CODE (op) == CONST_DOUBLE)
|
||||
return (const_double_rtx_ok_for_fpu (op)
|
||||
|| neg_const_double_rtx_ok_for_fpu (op));
|
||||
|
||||
|
@ -2261,6 +2269,9 @@ di_operand (op, mode)
|
|||
if (s_register_operand (op, mode))
|
||||
return TRUE;
|
||||
|
||||
if (mode != VOIDmode && GET_MODE (op) != VOIDmode && GET_MODE (op) != DImode)
|
||||
return FALSE;
|
||||
|
||||
if (GET_CODE (op) == SUBREG)
|
||||
op = SUBREG_REG (op);
|
||||
|
||||
|
@ -2291,9 +2302,12 @@ soft_df_operand (op, mode)
|
|||
if (s_register_operand (op, mode))
|
||||
return TRUE;
|
||||
|
||||
if (mode != VOIDmode && GET_MODE (op) != mode)
|
||||
return FALSE;
|
||||
|
||||
if (GET_CODE (op) == SUBREG)
|
||||
op = SUBREG_REG (op);
|
||||
|
||||
|
||||
switch (GET_CODE (op))
|
||||
{
|
||||
case CONST_DOUBLE:
|
||||
|
|
Loading…
Add table
Reference in a new issue