diff options
author | Daniel Jacobowitz <drow@mvista.com> | 2003-02-19 14:38:45 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@gcc.gnu.org> | 2003-02-19 14:38:45 +0000 |
commit | 48a5f2fabb7e29cb733429e30928ae4a89e960cd (patch) | |
tree | 48731f2107a6ce3a518f75d46daa40a0bc6aca9b /gcc/expr.c | |
parent | 9e889775d4a5e2593244a12d06e2f0243f134dff (diff) | |
download | gcc-48a5f2fabb7e29cb733429e30928ae4a89e960cd.zip gcc-48a5f2fabb7e29cb733429e30928ae4a89e960cd.tar.gz gcc-48a5f2fabb7e29cb733429e30928ae4a89e960cd.tar.bz2 |
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
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -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)) |