diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/genemit.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5833a50..a1edf05 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2004-02-06 Kazu Hirata <kazu@cs.umass.edu> + * genemit.c (gen_exp) [CONST_INT]: Use const_int_rtx whenever + possible. + +2004-02-06 Kazu Hirata <kazu@cs.umass.edu> + * reload1.c (eliminate_regs_in_insn): If a set has a REG_EQUAL note containing (plus (reg) (const_int)), where reg is an eliminable reg, then perform the register elimination without diff --git a/gcc/genemit.c b/gcc/genemit.c index f1a2abd..00cf842 100644 --- a/gcc/genemit.c +++ b/gcc/genemit.c @@ -243,6 +243,10 @@ gen_exp (rtx x, enum rtx_code subroutine_type, char *used) printf ("const1_rtx"); else if (INTVAL (x) == -1) printf ("constm1_rtx"); + else if (-MAX_SAVED_CONST_INT <= INTVAL (x) + && INTVAL (x) <= MAX_SAVED_CONST_INT) + printf ("const_int_rtx[MAX_SAVED_CONST_INT + (%d)]", + (int) INTVAL (x)); else if (INTVAL (x) == STORE_FLAG_VALUE) printf ("const_true_rtx"); else |