From 48a5f2fabb7e29cb733429e30928ae4a89e960cd Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Wed, 19 Feb 2003 14:38:45 +0000 Subject: [PATCH] expr.c (expand_expr): Use gen_int_mode for the argument to gen_rtx_MULT. * expr.c (expand_expr): Use gen_int_mode for the argument to gen_rtx_MULT. From-SVN: r63110 --- gcc/ChangeLog | 5 +++++ gcc/expr.c | 8 +++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 07fe801232d6..b73eac640788 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-02-19 Daniel Jacobowitz + + * expr.c (expand_expr): Use gen_int_mode for the argument + to gen_rtx_MULT. + Wed Feb 19 14:22:42 CET 2003 Jan Hubicka * i386.md (cosxf2): Fix conditional. diff --git a/gcc/expr.c b/gcc/expr.c index 601c5e991ab3..926f10e48862 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -8089,6 +8089,8 @@ expand_expr (exp, target, tmode, modifier) if (modifier == EXPAND_SUM && mode == ptr_mode && host_integerp (TREE_OPERAND (exp, 1), 0)) { + tree exp1 = TREE_OPERAND (exp, 1); + op0 = expand_expr (TREE_OPERAND (exp, 0), subtarget, VOIDmode, EXPAND_SUM); @@ -8107,9 +8109,9 @@ expand_expr (exp, target, tmode, modifier) if (GET_CODE (op0) != REG) op0 = copy_to_mode_reg (mode, op0); - return - gen_rtx_MULT (mode, op0, - GEN_INT (tree_low_cst (TREE_OPERAND (exp, 1), 0))); + return gen_rtx_MULT (mode, op0, + gen_int_mode (tree_low_cst (exp1, 0), + TYPE_MODE (TREE_TYPE (exp1)))); } if (! safe_from_p (subtarget, TREE_OPERAND (exp, 1), 1))