diff options
Diffstat (limited to 'gcc/recog.c')
-rw-r--r-- | gcc/recog.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/recog.c b/gcc/recog.c index 9d9fa77..2b62167 100644 --- a/gcc/recog.c +++ b/gcc/recog.c @@ -1920,6 +1920,13 @@ asm_operand_ok (rtx op, const char *constraint, const char **constraints) goto reg; break; + case CT_CONST_INT: + if (!result + && CONST_INT_P (op) + && insn_const_int_ok_for_constraint (INTVAL (op), cn)) + result = 1; + break; + case CT_MEMORY: /* Every memory operand can be reloaded to fit. */ result = result || memory_operand (op, VOIDmode); @@ -2443,6 +2450,9 @@ preprocess_constraints (int n_operands, int n_alternatives, op_alt[i].cl = reg_class_subunion[op_alt[i].cl][cl]; break; + case CT_CONST_INT: + break; + case CT_MEMORY: op_alt[i].memory_ok = 1; break; |