aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2001-05-02 17:31:19 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2001-05-02 13:31:19 -0400
commit6349ad241cd0b0b7c928c12d443eb27aa645716b (patch)
tree9a92264fcb86c3edfa74af97b9bbdf96edab11f9 /gcc
parent2be6a7e9029968f7d19f4761f2b4ec013e32cd64 (diff)
downloadgcc-6349ad241cd0b0b7c928c12d443eb27aa645716b.zip
gcc-6349ad241cd0b0b7c928c12d443eb27aa645716b.tar.gz
gcc-6349ad241cd0b0b7c928c12d443eb27aa645716b.tar.bz2
function.c (fixup_var_regs_1, [...]): Use promoted mode for replacement.
* function.c (fixup_var_regs_1, case SUBREG): Use promoted mode for replacement. From-SVN: r41765
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog3
-rw-r--r--gcc/function.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8779914..2c0f894 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,8 @@
Wed May 2 13:09:36 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ * function.c (fixup_var_regs_1, case SUBREG): Use promoted mode
+ for replacement.
+
* expr.c (store_field): Do nothing except elaborate side-effects if
zero-bit field.
diff --git a/gcc/function.c b/gcc/function.c
index 7673aab..3721a60 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -2144,7 +2144,7 @@ fixup_var_refs_1 (var, promoted_mode, loc, insn, replacements)
{
replacement = find_fixup_replacement (replacements, var);
if (replacement->new == 0)
- replacement->new = gen_reg_rtx (GET_MODE (var));
+ replacement->new = gen_reg_rtx (promoted_mode);
SUBREG_REG (x) = replacement->new;
return;
}