aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2001-12-29 21:05:22 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2001-12-29 16:05:22 -0500
commit9413de453da4c94d53f3fa21592643a7d6c311bc (patch)
tree8c51408d6f929bdfc0d477fa6246aedcedb7b6e4 /gcc
parent6790d1bd90d6d41631034507a42a42d04f1d4003 (diff)
downloadgcc-9413de453da4c94d53f3fa21592643a7d6c311bc.zip
gcc-9413de453da4c94d53f3fa21592643a7d6c311bc.tar.gz
gcc-9413de453da4c94d53f3fa21592643a7d6c311bc.tar.bz2
* expr.c (convert_move): If -fforce-mem, force FROM to not be memory.
From-SVN: r48385
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog2
-rw-r--r--gcc/expr.c3
2 files changed, 5 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5ba989d..6b10d4c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,7 @@
Sat Dec 29 15:48:54 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ * expr.c (convert_move): If -fforce-mem, force FROM to not be memory.
+
* stor-layout.c (layout_decl): Don't misalign field of variable size
for packed record.
diff --git a/gcc/expr.c b/gcc/expr.c
index 98a56cd..1c320b9 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -1052,6 +1052,9 @@ convert_move (to, from, unsignedp)
if ((code = can_extend_p (to_mode, from_mode, unsignedp))
!= CODE_FOR_nothing)
{
+ if (flag_force_mem)
+ from = force_not_mem (from);
+
emit_unop_insn (code, to, from, equiv_code);
return;
}